PHP: различия между версиями

Перейти к навигации Перейти к поиску
570 байт убрано ,  4 года назад
 
=== Внешние переменные ===
После того, как запрос клиента проанализирован веб-сервером и передан '''РНР'''-интерпретатору — последний устанавливает ряд переменных, которые содержат данные запроса и доступны всё время его выполнения:.
 
# Сначала '''PHP''' инициализирует массивы <code>$_ENV</code> (содержащий переменные среды-окружения; англ. ''environment'') и <code>$_SERVER</code><ref>На самом деле, порядок инициализации суперглобальных массивов зависит от настроек в файле ''php.ini''</ref>. Ассоциативный массив <code>$_SERVER</code> содержит следующие ключи (индексы массива): {| class="wikitable" !Ключ (индекс ячейки массива) !Полный путь к ячейке массива !Содержимое ячейки массива |- |<code>HTTP_USER_AGENT</code> |<code>$_SERVER['HTTP_USER_AGENT']</code> |Сведения о браузере клиента. |- |<code>HTTP_ACCEPT</code> |<code>$_SERVER['HTTP_ACCEPT']</code> |Принимаемые MIME-типы. Может служить для определения возможностей браузера. |- |<code>PHP_SELF</code> |<code>$_SERVER['PHP_SELF']</code> |Путь к файлу, содержащему выполняющийся скрипт, относительно корневого каталога (папки) сервера. Пример: <code>/w/index.php</code>. |} [КОММЕНТАРИЙ: Этот абзац содержит ошибку! Вы явно хотели сделать какую-то табличку. Однако вместо самой таблицы на страницу выводится, похоже, её исходный текст. Или допущена ошибка в синтаксисе описания таблицы, или вы забыли таблицу заключить в какие-то тэги. Указание на эту ошибку смотрите также в разделе "Обсуждение".]
Сначала '''PHP''' инициализирует массивы <code>$_ENV</code> (содержащий переменные среды-окружения; англ. ''environment'') и <code>$_SERVER</code><ref>. На самом деле, порядок инициализации суперглобальных массивов зависит от настроек в файле ''php.ini''</ref>. Ассоциативный массив <code>$_SERVER</code> содержит следующие ключи (индексы массива):
# Затем '''РНР''' заполняет переменную <code>$_GET[]</code>, являющуюся ассоциативным массивом, которая создаётся при анализе строки запроса. Строка запроса хранится в элементе массива <code>$_SERVER['QUERY_STRING']</code> и представляет собой информацию, следующую за символом «?» в запрошенном URL. '''РНР''' разбивает строку запроса по символам «&»<ref>Символ разделения также может меняться в файле ''php.ini''. Часто используется символ «;».</ref> на отдельные элементы, а затем ищет в каждом из этих элементов знак «=». Если знак «=» найден, то создаётся переменная с именем из символов, стоящих слева от знака равенства. Рассмотрим следующую форму:
{| class="wikitable"
!Ключ (индекс ячейки массива)
!Полный путь к ячейке массива
!Содержимое ячейки массива
|-
|<code>HTTP_USER_AGENT</code>
|<code>$_SERVER['HTTP_USER_AGENT']</code>
|Сведения о браузере клиента.
|-
|<code>HTTP_ACCEPT</code>
|<code>$_SERVER['HTTP_ACCEPT']</code>
|Принимаемые MIME-типы. Может служить для определения возможностей браузера.
|-
|<code>PHP_SELF</code>
|<code>$_SERVER['PHP_SELF']</code>
|Путь к файлу, содержащему выполняющийся скрипт, относительно корневого каталога (папки) сервера. Пример: <code>/w/index.php</code>.
|}
 
# Затем '''РНР''' заполняет переменную <code>$_GET[]</code>, являющуюся ассоциативным массивом, которая создаётся при анализе строки запроса. Строка запроса хранится в элементе массива <code>$_SERVER['QUERY_STRING']</code> и представляет собой информацию, следующую за символом «?» в запрошенном URL. '''РНР''' разбивает строку запроса по символам «&»<ref>Символ разделения также может меняться в файле ''php.ini''. Часто используется символ «;».</ref> на отдельные элементы, а затем ищет в каждом из этих элементов знак «=». Если знак «=» найден, то создаётся переменная с именем из символов, стоящих слева от знака равенства. Рассмотрим следующую форму:
<source lang="html5">
<!DOCTYPE html>
Анонимный участник

Навигация