Изучение различных методов получения текущего URL-адреса и имени файла PHP в PHP

При веб-разработке часто необходимо получить текущий URL-адрес и имя исполняемого файла PHP. Эта информация может быть полезна для различных целей, таких как создание динамических ссылок, обработка перенаправлений или выполнение определенных действий на основе текущей страницы. В этой статье мы рассмотрим несколько методов выполнения этой задачи с помощью PHP. Итак, приступим!

Метод 1: использование $_SERVER[’PHP_SELF’]
Один простой способ получить текущий URL-адрес и имя файла PHP — использовать суперглобальную переменную $_SERVER['PHP_SELF']. Эта переменная содержит имя сценария, который выполняется в данный момент. Чтобы извлечь только имя файла, мы можем использовать функцию basename().

$currentFile = $_SERVER['PHP_SELF'];
$fileName = basename($currentFile);
echo "Current URL: ".$_SERVER['HTTP_HOST'].$currentFile;
echo "PHP File Name: ".$fileName;

Метод 2: использование $_SERVER[’REQUEST_URI’]
Другой метод предполагает использование суперглобальной переменной $_SERVER['REQUEST_URI'], которая содержит URI (универсальный идентификатор ресурса) текущего запроса. Анализируя это значение, мы можем извлечь имя файла.

$currentURI = $_SERVER['REQUEST_URI'];
$fileName = basename(parse_url($currentURI, PHP_URL_PATH));
echo "Current URL: ".$_SERVER['HTTP_HOST'].$currentURI;
echo "PHP File Name: ".$fileName;

Метод 3: использование $_SERVER[’SCRIPT_NAME’]
Суперглобальная переменная $_SERVER['SCRIPT_NAME']предоставляет путь к выполняемому скрипту, включая имя файла. Мы можем извлечь имя файла из этого пути с помощью функции basename().

$scriptName = $_SERVER['SCRIPT_NAME'];
$fileName = basename($scriptName);
echo "Current URL: ".$_SERVER['HTTP_HOST'].$scriptName;
echo "PHP File Name: ".$fileName;

Метод 4: использование $_SERVER[‘DOCUMENT_ROOT’]
Если вы хотите получить полный путь к файлу PHP, а не только имя файла, вы можете объединить $_SERVER['DOCUMENT_ROOT']с $_SERVER['PHP_SELF'].

$documentRoot = $_SERVER['DOCUMENT_ROOT'];
$filePath = str_replace($documentRoot, '', $_SERVER['PHP_SELF']);
echo "Current URL: ".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
echo "PHP File Path: ".$filePath;

В этой статье мы рассмотрели различные методы получения текущего URL-адреса и имени файла PHP с помощью PHP. Вы можете выбрать метод, который лучше всего соответствует вашим требованиям. Если вам нужно генерировать динамические ссылки, обрабатывать перенаправления или выполнять определенные действия на основе текущей страницы, эти методы пригодятся. Поэкспериментируйте с этими примерами кода и включите их в свои проекты веб-разработки.