 |
В
PHP имеется большое количество предопределённых переменных, доступных любому скрипту.
Многие эти переменные, однако, невозможно полностью задокументировать, так как
они зависят от сервера, на котором происходит работа, его версии и установок и
других факторов. Некоторые из этих переменных будут недоступны при запуске РНР
из командной строки. Список этих переменных см. в приложении Предопределённые
переменные. | Предупреждение! |
|---|
|
В PHP 4.2.0 и позднее, набор по умолчанию предопределённых переменных, доступных
в глобальной области видимости, изменён. Отдельные переменные ввода и сервера
по умолчанию больше не размещаются непосредственно в глобальной области
видимости; они размещаются в суперглобальных
массивах. Вы можете форсировать старое поведение, установив register_globals
в 'On' в вашем файле php.ini. Дополнительно см. PHP
4.1.0 Release Announcement. |
Начиная с версии 4.1.0,
PHP предоставляет набор предопределённых массивов, содержащих переменные web-сервера
(если они имеются), окружения и пользовательского ввода. Эти новые массивы более
специализированы, так как автоматически являются глобальными - т.е. автоматически
доступны в любой области видимости. Поэтому их часто называют 'автоглобалы' или
'суперглобалы'. (В PHP нет механизма реализации пользовательских суперглобалов.) Суперглобалы
перечислены ниже; см. также список их содержимого и обсуждение предопределённых
переменных PHP и их природы в приложении Предопределённые
переменные. Если некоторые переменные в variables_order
не установлены, их соответствующие суперглобальные массивы также остаются пустыми. Суперглобалы
PHP- $GLOBALS
-
Содержит ссылку на каждую переменную, доступную в данный момент в глобальной
области видимости данного скрипта. Ключами этого массива являются имена глобальных
переменных. - $_SERVER
-
Переменные, установленные web-сервером или как-либо иначе относящиеся к среде
окружения выполнения текущего скрипта. Аналогичен старому массиву $HTTP_SERVER_VARS
(который ещё доступен, но не рекомендуется). - $_GET
Переменные,
предоставляемые скрипту через HTTP GET. Аналогичен старому массиву $HTTP_GET_VARS
(который ещё доступен, но не рекомендуется). - $_POST
Переменные,
предоставляемые скрипту через HTTP POST. Аналогичен старому массиву $HTTP_POST_VARS
(который ещё доступен, но не рекомендуется). - $_COOKIE
Переменные,
предоставляемые скрипту через HTTP cookies. Аналогичен старому массиву $HTTP_COOKIE_VARS
(который ещё доступен, но не рекомендуется). - $_FILES
Переменные,
предоставляемые скрипту через HTTP post-загрузку файлов. Аналогичен старому массиву
$HTTP_POST_FILES (который ещё доступен, но не рекомендуется). См. дополнительно
загрузка методом POST. - $_ENV
Переменные,
предоставляемые скрипту через среду окружения. Аналогичен старому массиву $HTTP_ENV_VARS
(который ещё доступен, но не рекомендуется). - $_REQUEST
Переменные,
предоставляемые скрипту через любой механизм пользовательского ввода, и которым,
следовательно, нельзя доверять. Примечание: при запуске
из командной строки этот массив не включит вхождения argv и argc;
они представлены в массиве $_SERVER. Наличие и порядок включения переменных
в этот массив определяются в соответствии с директивой конфигурации variables_order.
Этот массив не имеет прямых аналогов в версиях PHP до 4.1.0. - $_SESSION
Переменные,
зарегистрированные на данный момент в сессии скрипта. Аналогичен старому массиву
$HTTP_SESSION_VARS (который ещё доступен, но не рекомендуется). См. также
раздел Функции обслуживания сессий.
|  |