Свойства URL
Свойства текущей страницы
Свойства URL текущей страницы доступна через массив $_SERVER.
# https://know-online.com/php/url/svoistva-url?query=example
$_SERVER['HTTP_X_FORWARDED_PROTO']; // https
$_SERVER['SERVER_PROTOCOL']; // HTTP/1.1
$_SERVER['HTTP_HOST']; // know-online.com
$_SERVER['SERVER_NAME']; // know-online.com
$_SERVER['SERVER_PORT']; // 80
$_SERVER['REQUEST_URI']; // /php/url/svoistva-url?query=example
$_SERVER['QUERY_STRING']; // query=example
$_SERVER['HTTPS']; // on (появляется только на протоколе https)
Через PHP нельзя определить значение хеша (символа #). Например https://know-online.com/#php.
Свойства ссылки в строке (с версии PHP 8.5)
В PHP 8.5 появился новый объект для парсинга и обработки URL на основе современных стандартов.
use Uri\Rfc3986\Uri;
$uri = new Uri('https://know-online.com/php/page');
$uri->getHost(); // know-online.com
Свойства ссылки в строке (до PHP 8.5)
Получить свойства указанной ссылки можно через функцию parse_url().
$url = parse_url('https://know-online.com/php/url/svoistva-url?query=example&second_var=value#hash');
$url['scheme']; // http
$url['host']; // know-online.com
$url['path']; // /php/url/svoistva-url
$url['query']; // query=example&second_var=value
$url['fragment']; // hash
Если надо получить массив из строки запроса, то можно использовать функцию parse_str().
parse_str('query=example&second_var=value', $url_get);
$url_get['query']; // example
$url_get['second_var']; // value
Функция parse_str() с одним параметром считается не рекомендованным к использованию с версии PHP 7.2.0.
Поддержать автора
Все статьи создаются и поддерживаются одним человеком,
если вам нравится контент, вы можете поддержать автора сайта
