PHP $_SERVER
Когда вам нужны сведения о веб-сервере, например заголовки, пути или расположение скрипта, загляните в суперглобальную переменную $_SERVER.
Как и другие суперглобальные переменные, она встроена в язык, и её можно использовать из любой области видимости.
Примечание: Эти элементы заполняет веб-сервер, поэтому один сервер или одна среда может предоставлять элемент, которого нет в другой.
Вот некоторые из них в действии:
Использование элементов $_SERVER
Выведите несколько значений $_SERVER, одно за другим:
Prompt
Напишите PHP-скрипт, который выводит значения нескольких элементов $_SERVER: PHP_SELF, SERVER_NAME, HTTP_HOST, HTTP_REFERER, HTTP_USER_AGENT и SCRIPT_NAME.
Вывод: PHP-скрипт
index.php
<?php
echo $_SERVER['PHP_SELF'];
echo $_SERVER['SERVER_NAME'];
echo $_SERVER['HTTP_HOST'];
echo $_SERVER['HTTP_REFERER'];
echo $_SERVER['HTTP_USER_AGENT'];
echo $_SERVER['SCRIPT_NAME'];
?>
Элементы $_SERVER
Вот элементы $_SERVER, которые, скорее всего, вам понадобятся:
$_SERVER['PHP_SELF']- Имя файла выполняющегося сейчас скрипта$_SERVER['GATEWAY_INTERFACE']- Версия CGI (Common Gateway Interface), используемая на сервере$_SERVER['SERVER_ADDR']- IP-адрес сервера$_SERVER['SERVER_NAME']- Имя сервера (например, www.PromptCookbook.com)$_SERVER['SERVER_SOFTWARE']- Строка, которая определяет программное обеспечение сервера (например, Apache/2.2.24)$_SERVER['SERVER_PROTOCOL']- Название и версия информационного протокола (например, HTTP/1.1)$_SERVER['REQUEST_METHOD']- Метод, которым была запрошена страница (например, POST)$_SERVER['REQUEST_TIME']- Временная метка начала запроса (например, 1377687496)$_SERVER['QUERY_STRING']- Строка запроса, если страница была запрошена с ней$_SERVER['HTTP_ACCEPT']- Заголовок Accept, отправленный с этим запросом$_SERVER['HTTP_ACCEPT_CHARSET']- Заголовок Accept_Charset этого запроса (например, utf-8,ISO-8859-1)$_SERVER['HTTP_HOST']- Заголовок Host, отправленный с этим запросом$_SERVER['HTTP_REFERER']- Полный URL страницы, с которой пользователь перешёл сюда; полагаться на него нельзя, так как не все пользовательские агенты его передают$_SERVER['HTTPS']- Показывает, был ли скрипт запрошен по защищённому протоколу HTTP$_SERVER['REMOTE_ADDR']- IP-адрес, с которого посетитель просматривает страницу$_SERVER['REMOTE_HOST']- Имя хоста, с которого посетитель просматривает страницу$_SERVER['REMOTE_PORT']- Порт, через который компьютер посетителя связывается с веб-сервером$_SERVER['SCRIPT_FILENAME']- Полный абсолютный путь к выполняющемуся скрипту$_SERVER['SERVER_ADMIN']- Значение директивы SERVER_ADMIN из файла конфигурации веб-сервера или, для скрипта на виртуальном хосте, значение, заданное для этого виртуального хоста (например, [email protected])$_SERVER['SERVER_PORT']- Порт на компьютере сервера, через который работает веб-сервер (например, 80)$_SERVER['SERVER_SIGNATURE']- Имя виртуального хоста и версия сервера, которые добавляются на страницы, генерируемые сервером$_SERVER['PATH_TRANSLATED']- Путь к текущему скрипту с точки зрения файловой системы$_SERVER['SCRIPT_NAME']- Путь к текущему скрипту$_SERVER['SCRIPT_URI']- URI текущей страницы