PHP предоставляет большое количество предопределенных переменных для любого скрипта, который он запускает. PHP предоставляет дополнительный набор предопределенных массивов, содержащих переменные из веб-сервера среды и пользовательский ввод. Эти новые массивы называются суперглобальными
Все следующие переменные автоматически доступны в каждой области.
Суперглобальные PHP
Sr.No | Переменная и описание |
---|---|
1 |
$ GLOBALS Содержит ссылку на каждую переменную, которая в настоящее время доступна в глобальной области действия скрипта. Ключи этого массива являются именами глобальных переменных. |
2 |
$ _SERVER Это массив, содержащий информацию, такую как заголовки, пути и расположения скриптов. Записи в этом массиве создаются веб-сервером. Нет никакой гарантии, что каждый веб-сервер предоставит какой-либо из них. В следующем разделе приведен полный список всех переменных SERVER. |
3 |
$ _GET Ассоциативный массив переменных, переданных в текущий скрипт через метод HTTP GET. |
4 |
$ _POST Ассоциативный массив переменных, переданных в текущий скрипт через метод HTTP POST. |
5 |
$ _FILES Ассоциативный массив элементов, загруженных в текущий скрипт через метод HTTP POST. |
6 |
$ _REQUEST Ассоциативный массив, состоящий из содержимого $ _GET, $ _POST и $ _COOKIE. |
7 |
$ _COOKIE Ассоциативный массив переменных, передаваемых в текущий скрипт через HTTP-куки. |
8 |
$ _SESSION Ассоциативный массив, содержащий переменные сеанса, доступные текущему сценарию. |
9 |
$ _PHP_SELF Строка, содержащая имя файла сценария PHP, в котором он вызывается. |
10 |
$ php_errormsg $ php_errormsg — это переменная, содержащая текст последнего сообщения об ошибке, сгенерированного PHP. |
$ GLOBALS
Содержит ссылку на каждую переменную, которая в настоящее время доступна в глобальной области действия скрипта. Ключи этого массива являются именами глобальных переменных.
$ _SERVER
Это массив, содержащий информацию, такую как заголовки, пути и расположения скриптов. Записи в этом массиве создаются веб-сервером. Нет никакой гарантии, что каждый веб-сервер предоставит какой-либо из них. В следующем разделе приведен полный список всех переменных SERVER.
$ _GET
Ассоциативный массив переменных, переданных в текущий скрипт через метод HTTP GET.
$ _POST
Ассоциативный массив переменных, переданных в текущий скрипт через метод HTTP POST.
$ _FILES
Ассоциативный массив элементов, загруженных в текущий скрипт через метод HTTP POST.
$ _REQUEST
Ассоциативный массив, состоящий из содержимого $ _GET, $ _POST и $ _COOKIE.
$ _COOKIE
Ассоциативный массив переменных, передаваемых в текущий скрипт через HTTP-куки.
$ _SESSION
Ассоциативный массив, содержащий переменные сеанса, доступные текущему сценарию.
$ _PHP_SELF
Строка, содержащая имя файла сценария PHP, в котором он вызывается.
$ php_errormsg
$ php_errormsg — это переменная, содержащая текст последнего сообщения об ошибке, сгенерированного PHP.
Переменные сервера: $ _SERVER
$ _SERVER — массив, содержащий информацию, такую как заголовки, пути и местоположения сценария. Записи в этом массиве создаются веб-сервером. Нет никакой гарантии, что каждый веб-сервер предоставит какой-либо из них.
$ _SERVER [ ‘PHP_SELF’]
Имя файла исполняемого в данный момент скрипта относительно корня документа
$ _SERVER [ ‘ARGV’]
Массив аргументов передан в скрипт. Когда скрипт запускается из командной строки, это дает доступ в стиле C к параметрам командной строки. При вызове через метод GET он будет содержать строку запроса.
$ _SERVER [ ‘ARGC’]
Содержит количество параметров командной строки, переданных в сценарий, если они выполняются в командной строке.
$ _SERVER [ ‘GATEWAY_INTERFACE’]
Какую версию спецификации CGI использует сервер; то есть «CGI / 1.1».
$ _SERVER [ ‘server_addr’]
IP-адрес сервера, под которым выполняется текущий скрипт.
$ _SERVER [ ‘SERVER_NAME’]
Имя хоста сервера, под которым выполняется текущий скрипт. Если скрипт выполняется на виртуальном хосте, это будет значение, определенное для этого виртуального хоста.
$ _SERVER [ ‘SERVER_SOFTWARE’]
Строка идентификации сервера, указанная в заголовках при ответе на запросы.
$ _SERVER [ ‘SERVER_PROTOCOL’]
Наименование и редакция информационного протокола, по которому запрашивалась страница; то есть «HTTP / 1.0»;
$ _SERVER [ ‘REQUEST_METHOD’]
Какой метод запроса был использован для доступа к странице; то есть «GET», «HEAD», «POST», «PUT».
$ _SERVER [ ‘request_time’]
Отметка времени начала запроса. Доступно с PHP 5.1.0.
$ _SERVER [ ‘QUERY_STRING’]
Строка запроса, если таковая имеется, через которую был получен доступ к странице.
$ _SERVER [ ‘DOCUMENT_ROOT’]
Корневой каталог документа, в котором выполняется текущий скрипт, как определено в файле конфигурации сервера.
$ _SERVER [ ‘HTTP_ACCEPT’]
Содержимое заголовка Accept: из текущего запроса, если он есть.
$ _SERVER [ ‘HTTP_ACCEPT_CHARSET’]
Содержимое заголовка Accept-Charset: из текущего запроса, если он есть. Пример: ‘iso-8859-1, *, utf-8’.
$ _SERVER [ ‘HTTP_ACCEPT_ENCODING’]
Содержимое заголовка Accept-Encoding: из текущего запроса, если он есть. Пример: «gzip».
$ _SERVER [ ‘HTTP_ACCEPT_LANGUAGE’]
Содержимое заголовка Accept-Language: из текущего запроса, если он есть. Пример: «en».
$ _SERVER [ ‘HTTP_CONNECTION’]
Содержимое заголовка Connection: из текущего запроса, если он есть. Пример: «Keep-Alive».
$ _SERVER [ ‘HTTP_HOST’]
Содержимое заголовка Host: из текущего запроса, если таковой имеется.
$ _SERVER [ ‘HTTP_REFERER’]
Адрес страницы (если есть), на которой пользовательский агент направлен на текущую страницу.
$ _SERVER [ ‘HTTP_USER_AGENT’]
Это строка, обозначающая пользовательский агент, который обращается к странице. Типичный пример: Mozilla / 4.5 [en] (X11; U; Linux 2.2.9 i586).
$ _SERVER [ ‘HTTPS’]
Установите непустое значение, если скрипт запрашивался по протоколу HTTPS.
$ _SERVER [ ‘REMOTE_ADDR’]
IP-адрес, с которого пользователь просматривает текущую страницу.
$ _SERVER [ ‘REMOTE_HOST’]
Имя хоста, с которого пользователь просматривает текущую страницу. Обратный просмотр DNS основан на REMOTE_ADDR пользователя.
$ _SERVER [ ‘REMOTE_PORT’]
Порт, используемый на компьютере пользователя для связи с веб-сервером.
$ _SERVER [ ‘SCRIPT_FILENAME’]
Абсолютный путь к текущему исполняемому скрипту.
$ _SERVER [ ‘SERVER_ADMIN’]
Значение, данное директиве SERVER_ADMIN (для Apache) в файле конфигурации веб-сервера.
$ _SERVER [ ‘SERVER_PORT’]
Порт на сервере, используемый веб-сервером для связи. Для настроек по умолчанию это будет «80».
$ _SERVER [ ‘SERVER_SIGNATURE’]
Строка, содержащая версию сервера и имя виртуального хоста, которые добавляются на сгенерированные сервером страницы, если они включены.
$ _SERVER [ ‘PATH_TRANSLATED’]
Путь к текущему сценарию на основе файловой системы.
$ _SERVER [ ‘SCRIPT_NAME’]
Содержит текущий путь скрипта. Это полезно для страниц, которые должны указывать на себя.
$ _SERVER [ ‘REQUEST_URI’]
URI, который был дан для доступа к этой странице; например, /index.html.
$ _SERVER [ ‘PHP_AUTH_DIGEST’]
При работе под Apache в качестве модуля, выполняющего Digest HTTP-аутентификацию, эта переменная устанавливается на заголовок «Authorization», отправляемый клиентом.
$ _SERVER [ ‘PHP_AUTH_USER’]
При работе под Apache или IIS (ISAPI на PHP 5) в качестве модуля, выполняющего HTTP-аутентификацию, эта переменная устанавливается на имя пользователя, предоставленное пользователем.
$ _SERVER [ ‘PHP_AUTH_PW’]
При работе в Apache или IIS (ISAPI на PHP 5) в качестве модуля, выполняющего HTTP-аутентификацию, эта переменная устанавливается на пароль, предоставленный пользователем.
$ _SERVER [ ‘AUTH_TYPE’]
При работе под Apache в качестве модуля, выполняющего аутентификацию HTTP, эта переменная устанавливается на тип аутентификации.