ApacheRequest
class ApacheRequest extends Request
Запрос представляет собой HTTP-запрос с сервера Apache.
Постоянные значения
| HEADER_CLIENT_IP | |
| HEADER_CLIENT_HOST | |
| HEADER_CLIENT_PROTO | |
| HEADER_CLIENT_PORT |
Свойства
| ParameterBag | $attributes | Пользовательские параметры | из Request |
| ParameterBag | $request | Параметры тела запроса ($_POST) | из Request |
| ParameterBag | $query | Параметры строки запроса ($_GET) | из Request |
| ServerBag | $server | Параметры сервера и среды выполнения ($_SERVER) | из Request |
| FileBag | $files | Загруженные файлы ($_FILES) | из Request |
| ParameterBag | $cookies | Cookies ($_COOKIE) | из Request |
| HeaderBag | $headers | Заголовки (получены из $_SERVER) | из Request |
Методы
| __construct(array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), string $content = null) Конструктор. | from Request | |
| initialize(array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), string $content = null) Устанавливает параметры для этого запроса. | from Request | |
| static Request | createFromGlobals() Создаёт новый запрос со значениями из суперглобальных переменных PHP. | from Request |
| static Request | create(string $uri, string $method = 'GET', array $parameters = array(), array $cookies = array(), array $files = array(), array $server = array(), string $content = null) Создаёт запрос на основе заданного URI и конфигурации. | from Request |
| Request | duplicate(array $query = null, array $request = null, array $attributes = null, array $cookies = null, array $files = null, array $server = null) Создаёт копию запроса и перезаписывает некоторые его параметры. | from Request |
| __clone() Создаёт копию текущего запроса. | from Request | |
| string | __toString() Возвращает запрос в виде строки. | from Request |
| overrideGlobals() Переопределяет глобальные переменные PHP в соответствии с экземпляром этого запроса. | from Request | |
| static | setTrustedProxies(array $proxies) Устанавливает список доверенных прокси-серверов. | from Request |
| static array | getTrustedProxies() Получает список доверенных прокси-серверов. | from Request |
| static | setTrustedHosts(array $hostPatterns) Устанавливает список доверенных шаблонов хостов. | from Request |
| static array | getTrustedHosts() Получает список доверенных шаблонов хостов. | from Request |
| static | setTrustedHeaderName(string $key, string $value) Устанавливает имя для доверенных заголовков. | from Request |
| static string | getTrustedHeaderName(string $key) Получает имя доверенного заголовка прокси. | from Request |
| static string | normalizeQueryString(string $qs) Нормализует строку запроса. | from Request |
| static | enableHttpMethodParameterOverride() Включает поддержку параметра запроса _method для определения предполагаемого HTTP-метода. | from Request |
| static Boolean | getHttpMethodParameterOverride() Проверяет, включена ли поддержка параметра запроса _method. | from Request |
| mixed | get(string $key, mixed $default = null, Boolean $deep = false) Получает значение "параметра". | from Request |
| SessionInterface|null | getSession() Получает сессию. | from Request |
| Boolean | hasPreviousSession() Является ли запрос содержащим сессию, которая была начата в одном из предыдущих запросов. | from Request |
| Boolean | hasSession() Содержит ли запрос объект сессии. | from Request |
| setSession(SessionInterface $session) Устанавливает сессию. | from Request | |
| array | getClientIps() Возвращает адреса IP клиента. | from Request |
| string | getClientIp() Возвращает адрес IP клиента. | from Request |
| string | getScriptName() Возвращает имя текущего скрипта. | from Request |
| string | getPathInfo() Возвращает путь, запрашиваемый относительно исполняемого скрипта. | from Request |
| string | getBasePath() Возвращает корневой путь, из которого выполняется этот запрос. | from Request |
| string | getBaseUrl() Возвращает корневой URL, из которого выполняется этот запрос. | from Request |
| string | getScheme() Получает схему запроса. | from Request |
| string | getPort() Возвращает порт, на котором выполняется запрос. | from Request |
| string|null | getUser() Возвращает пользователя. | from Request |
| string|null | getPassword() Возвращает пароль. | from Request |
| string | getUserInfo() Получает информацию о пользователе. | from Request |
| string | getHttpHost() Возвращает HTTP-хост, запрашиваемый. | from Request |
| string | getRequestUri() Возвращает запрашиваемый URI. | from Request |
| string | getSchemeAndHttpHost() Получает схему и HTTP-хост. | from Request |
| string | getUri() Генерирует нормализованный URI для запроса. | from Request |
| string | getUriForPath(string $path) Генерирует нормализованный URI для заданного пути. | from Request |
| string|null | getQueryString() Генерирует нормализованную строку запроса для запроса. | from Request |
| Булево | isSecure() Проверяет, является ли запрос защищенным. | из Request |
| строка | getHost() Возвращает имя хоста. | из Request |
| setMethod(строка $method) Устанавливает метод запроса. | из Request | |
| строка | getMethod() Получает "намеченный" метод запроса. | из Request |
| строка | getRealMethod() Получает "реальный" метод запроса. | из Request |
| строка | getMimeType(строка $format) Получает тип MIME, связанный с форматом. | из Request |
| строка|null | getFormat(строка $mimeType) Получает формат, связанный с типом MIME. | из Request |
| setFormat(строка $format, строка|массив $mimeTypes) Связывает формат с типами MIME. | из Request | |
| строка | getRequestFormat(строка $default = 'html') Получает формат запроса. | из Request |
| setRequestFormat(строка $format) Устанавливает формат запроса. | из Request | |
| строка|null | getContentType() Получает формат, связанный с запросом. | из Request |
| setDefaultLocale(строка $locale) Устанавливает язык по умолчанию. | из Request | |
| setLocale(строка $locale) Устанавливает язык. | из Request | |
| строка | getLocale() Получить язык. | из Request |
| Булево | isMethod(строка $method) Проверяет, является ли метод запроса указанного типа. | из Request |
| Булево | isMethodSafe() Проверяет, является ли метод безопасным. | из Request |
| строка|ресурс | getContent(Булево $asResource = false) Возвращает содержимое тела запроса. | из Request |
| массив | getETags() Получает ETags. | из Request |
| Булево | isNoCache() | из Request |
| строка|null | getPreferredLanguage(массив $locales = null) Возвращает предпочтительный язык. | из Request |
| массив | getLanguages() Получает список языков, приемлемых для браузера клиента. | из Request |
| массив | getCharsets() Получает список кодировок, приемлемых для браузера клиента. | из Request |
| массив | getAcceptableContentTypes() Получает список типов содержимого, приемлемых для браузера клиента. | из Request |
| Булево | isXmlHttpRequest() Возвращает true, если запрос является XMLHttpRequest. | из Request |
Подробности
__construct(array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), string $content = null)
Конструктор.
Параметры
| array | $query | Параметры GET |
| array | $request | Параметры POST |
| array | $attributes | Атрибуты запроса (параметры, извлечённые из PATH_INFO и т. д.) |
| array | $cookies | Параметры COOKIE |
| array | $files | Параметры FILES |
| array | $server | Параметры SERVER |
| string | $content | Необработанные данные тела запроса |
initialize(array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), string $content = null)
Устанавливает параметры для этого запроса.
Этот метод также повторно инициализирует все свойства.
Параметры
| array | $query | Параметры GET |
| array | $request | Параметры POST |
| array | $attributes | Атрибуты запроса (параметры, извлечённые из PATH_INFO и т. д.) |
| array | $cookies | Параметры COOKIE |
| array | $files | Параметры FILES |
| array | $server | Параметры SERVER |
| string | $content | Необработанные данные тела запроса |
static Request createFromGlobals()
Создаёт новый запрос со значениями из суперглобальных переменных PHP.
Значение возвращаемого значения
| Request | Новый запрос |
static Request create(string $uri, string $method = 'GET', array $parameters = array(), array $cookies = array(), array $files = array(), array $server = array(), string $content = null)
Создаёт запрос на основе заданного URI и конфигурации.
Информация, содержащаяся в URI, всегда имеет приоритет над другой информацией (сервер и параметры).
Параметры
| string | $uri | URI |
| string | $method | HTTP-метод |
| array | $parameters | Параметры запроса (GET или POST) |
| array | $cookies | Куки запроса ($_COOKIE) |
| array | $files | Файлы запроса ($_FILES) |
| array | $server | Параметры сервера ($_SERVER) |
| string | $content | Необработанные данные тела запроса |
Значение возвращаемого значения
| Request | Экземпляр Request |
Request duplicate(array $query = null, array $request = null, array $attributes = null, array $cookies = null, array $files = null, array $server = null)
Создаёт копию запроса и перезаписывает некоторые его параметры.
Параметры
| array | $query | Параметры GET |
| array | $request | Параметры POST |
| array | $attributes | Атрибуты запроса (параметры, извлечённые из PATH_INFO и т. д.) |
| array | $cookies | Параметры COOKIE |
| array | $files | Параметры FILES |
| array | $server | Параметры SERVER |
Значение возвращаемого значения
| Request | Дублированный запрос |
__clone()
Создаёт клон текущего запроса.
Обратите внимание, что сессия не клонируется, так как дублированные запросы чаще всего являются подзапросами основного запроса.
string __toString()
Возвращает запрос в виде строки.
Значение возвращаемого значения
| string | Запрос |
overrideGlobals()
Переопределяет глобальные переменные PHP в соответствии с этим экземпляром запроса.
Переопределяет $GET, $POST, $REQUEST, $SERVER, $COOKIE. $FILES никогда не переопределяется, см. rfc1867
static setTrustedProxies(array $proxies)
Устанавливает список доверенных прокси-серверов.
В этом списке должны быть только те обратные прокси, которые вы управляете непосредственно.
Параметры
| array | $proxies | Список доверенных прокси |
static array getTrustedProxies()
Получает список доверенных прокси.
Значение возвращаемого значения
| array | Массив доверенных прокси. |
static setTrustedHosts(array $hostPatterns)
Устанавливает список доверенных хостов.
В этом списке должны быть только те хосты, которые вы управляете, используя регулярные выражения.
Параметры
| array | $hostPatterns | Список доверенных шаблонов хостов |
static array getTrustedHosts()
Получает список доверенных шаблонов хостов.
Значение возвращаемого значения
| array | Массив доверенных шаблонов хостов. |
static setTrustedHeaderName(string $key, string $value)
Устанавливает имя для доверенных заголовков.
Поддерживаются следующие ключи заголовков:
- Request::HEADERCLIENTIP: по умолчанию X-Forwarded-For (см. getClientIp())
- Request::HEADERCLIENTHOST: по умолчанию X-Forwarded-Host (см. getClientHost())
- Request::HEADERCLIENTPORT: по умолчанию X-Forwarded-Port (см. getClientPort())
- Request::HEADERCLIENTPROTO: по умолчанию X-Forwarded-Proto (см. getScheme() и isSecure())
Установка пустого значения позволяет отключить доверенный заголовок для данного ключа.
Параметры
| string | $key | Ключ заголовка |
| string | $value | Имя заголовка |
Исключения
| InvalidArgumentException |
static string getTrustedHeaderName(string $key)
Получает имя доверенного заголовка прокси.
Параметры
| string | $key | Ключ заголовка |
Значение возвращаемого значения
| string | Имя заголовка |
Исключения
| InvalidArgumentException |
static string normalizeQueryString(string $qs)
Нормализует строку запроса.
Строит нормализованную строку запроса, где пары ключ/значение отсортированы по алфавиту, имеют согласованное экранирование и удаляются ненужные разделители.
Параметры
| string | $qs | Строка запроса |
Значение возвращаемого значения
| string | Нормализованная строка запроса для Request |
static enableHttpMethodParameterOverride()
Включает поддержку параметра _method запроса для определения предполагаемого HTTP-метода.
Будьте осторожны, включение этой функции может привести к проблемам с CSRF в вашем коде. Убедитесь, что вы используете токены CSRF, когда это необходимо.
HTTP-метод может быть переопределён только при POST-запросе.
static Boolean getHttpMethodParameterOverride()
Проверяет, включена ли поддержка параметра _method запроса.
Значение возвращаемого значения
| Boolean | True, если параметр _method запроса включён, false в противном случае |
mixed get(string $key, mixed $default = null, Boolean $deep = false)
Получает значение параметра.
Этот метод в основном полезен для библиотек, которые хотят предоставить некоторую гибкость.
Порядок приоритета: GET, PATH, POST
Избегайте использования этого метода в контроллерах:
- медленно
- предпочтите получать из "именованного" источника
Лучше явно получить параметры запроса из соответствующего публичного свойства (query, attributes, request).
Параметры
| string | $key | ключ |
| mixed | $default | значение по умолчанию |
| Boolean | $deep | является ли параметр глубоко в многомерном массиве |
Значение возвращаемого значения
| mixed |
SessionInterface|null getSession()
Получает сессию.
Значение возвращаемого значения
| SessionInterface|null | Сессия |
Boolean hasPreviousSession()
Возвращает true, если запрос содержит сессию, начатую в одном из предыдущих запросов.
Значение возвращаемого значения
| Boolean |
Boolean hasSession()
Возвращает true, если запрос содержит объект сессии.
Этот метод не предоставляет никакой информации о состоянии объекта сессии, например, о том, запущена ли сессия. Это просто способ проверить, связан ли этот запрос с экземпляром Session.
Значение возвращаемого значения
| Булево | true, если запрос содержит объект Session, иначе false |
setSession(SessionInterface $session)
Устанавливает сессию.
Параметры
| SessionInterface | $session | Сессия |
array getClientIps()
Возвращает адреса IP клиента.
В возвращаемом массиве самый надёжный адрес IP стоит первым, а наименее надёжный — последним. «Реальный» адрес IP клиента — последний, но и наименее надёжный. Доверенные прокси-сервера удалены.
Используйте этот метод с осторожностью; вместо него следует использовать метод getClientIp().
Значение возвращаемого значения
| Массив | Адреса IP клиента |
См. также
| getClientIp() |
string getClientIp()
Возвращает адрес IP клиента.
Этот метод может читать адрес IP клиента из заголовка «X-Forwarded-For», если доверенные прокси-сервера были установлены с помощью «setTrustedProxies()». Значение заголовка «X-Forwarded-For» — список адресов IP, разделённых запятой и пробелом, где самый левый — исходный клиент, а каждый последующий прокси-сервер, передавший запрос, добавляет адрес IP, откуда он получил запрос.
Если ваш обратный прокси использует другое имя заголовка, отличное от «X-Forwarded-For» (например, «Client-Ip»), настройте его с помощью «setTrustedHeaderName()» с ключом «client-ip».
Значение возвращаемого значения
| Строка | Адрес IP клиента |
См. также
| getClientIps() | |
| http://en.wikipedia.org/wiki/X-Forwarded-For |
string getScriptName()
Возвращает текущее имя скрипта.
Значение возвращаемого значения
| Строка |
string getPathInfo()
Возвращает путь, запрашиваемый относительно исполняемого скрипта.
Путь всегда начинается с /.
Предположим, что этот запрос создаётся из /mysite на localhost:
- http://localhost/mysite возвращает пустую строку
- http://localhost/mysite/about возвращает '/about'
- http://localhost/mysite/enco%20ded возвращает '/enco%20ded'
- http://localhost/mysite/about?var=1 возвращает '/about'
Значение возвращаемого значения
| Строка | Исходный путь (т.е. не декодированный из URL) |
string getBasePath()
Возвращает корневой путь, из которого выполняется этот запрос.
Предположим, что файл index.php создаёт этот объект запроса:
- http://localhost/index.php возвращает пустую строку
- http://localhost/index.php/page возвращает пустую строку
- http://localhost/web/index.php возвращает '/web'
- http://localhost/we%20b/index.php возвращает '/we%20b'
Значение возвращаемого значения
| Строка | Исходный путь (т.е. не декодированный из URL) |
string getBaseUrl()
Возвращает корневой URL, из которого выполняется этот запрос.
Корневой URL никогда не заканчивается на /.
Это аналогично getBasePath(), за исключением того, что он также включает имя файла скрипта (например, index.php), если он существует.
Значение возвращаемого значения
| Строка | Исходный URL (т.е. не декодированный из URL) |
string getScheme()
Возвращает схему запроса.
Значение возвращаемого значения
| Строка |
string getPort()
Возвращает порт, на котором выполняется запрос.
Этот метод может читать порт клиента из заголовка «X-Forwarded-Port», если доверенные прокси-сервера были установлены с помощью «setTrustedProxies()».
Заголовок «X-Forwarded-Port» должен содержать порт клиента.
Если ваш обратный прокси использует другое имя заголовка, отличное от «X-Forwarded-Port», настройте его с помощью «setTrustedHeaderName()» с ключом «client-port».
Значение возвращаемого значения
| Строка |
string|null getUser()
Возвращает пользователя.
Значение возвращаемого значения
| Строка|null |
string|null getPassword()
Возвращает пароль.
Значение возвращаемого значения
| Строка|null |
string getUserInfo()
Возвращает информацию о пользователе.
Значение возвращаемого значения
| Строка | Имя пользователя и, необязательно, схема-специфичная информация о том, как получить авторизацию для доступа к серверу |
string getHttpHost()
Возвращает HTTP-хост, запрашиваемый пользователем.
Имя порта будет добавлено к хосту, если оно нестандартное.
Значение возвращаемого значения
| Строка |
string getRequestUri()
Возвращает запрашиваемый URI.
Значение возвращаемого значения
| Строка | Исходный URI (т.е. не декодированный из URL) |
string getSchemeAndHttpHost()
Возвращает схему и HTTP-хост.
Если URL был вызван с базовой аутентификацией, пользователь и пароль не добавляются в сгенерированную строку.
Значение возвращаемого значения
| Строка | Схема и HTTP-хост |
string getUri()
Генерирует нормализованный URI для запроса.
Значение возвращаемого значения
| Строка | Нормализованный URI для запроса |
См. также
| getQueryString() |
string getUriForPath(string $path)
Генерирует нормализованный URI для заданного пути.
Параметры
| Строка | $path | Путь, который нужно использовать вместо текущего |
Значение возвращаемого значения
| Строка | Нормализованный URI для пути |
string|null getQueryString()
Генерирует нормализованную строку запроса для запроса.
Строит нормализованную строку запроса, где пары ключ/значение отсортированы по алфавиту и имеют согласованную экранировку.
Значение возвращаемого значения
| Строка|null | Нормализованная строка запроса для запроса |
Boolean isSecure()
Проверяет, является ли запрос защищённым.
Этот метод может читать порт клиента из заголовка «X-Forwarded-Proto», если доверенные прокси-сервера были установлены с помощью «setTrustedProxies()».
Заголовок «X-Forwarded-Proto» должен содержать протокол: «https» или «http».
Если ваш обратный прокси использует другое имя заголовка, отличное от «X-Forwarded-Proto» (например, «SSL_HTTPS»), настройте его с помощью «setTrustedHeaderName()» с ключом «client-proto».
Значение возвращаемого значения
| Булево |
string getHost()
Возвращает имя хоста.
Этот метод может читать порт клиента из заголовка «X-Forwarded-Host», если доверенные прокси-сервера были установлены с помощью «setTrustedProxies()».
Заголовок «X-Forwarded-Host» должен содержать имя хоста клиента.
Если ваш обратный прокси использует другое имя заголовка, отличное от «X-Forwarded-Host», настройте его с помощью «setTrustedHeaderName()» с ключом «client-host».
Значение возвращаемого значения
| Строка |
Исключения
| UnexpectedValueException | если имя хоста неверно |
setMethod(string $method)
Устанавливает метод запроса.
Параметры
| Строка | $method |
string getMethod()
Возвращает «желаемый» метод запроса.
Если установлен заголовок X-HTTP-Method-Override, и метод — POST, то он используется для определения «фактического» желаемого HTTP-метода.
Параметр запроса _method также может быть использован для определения HTTP-метода, но только если был вызван enableHttpMethodParameterOverride().
Метод всегда является строкой в верхнем регистре.
Значение возвращаемого значения
| Строка | Метод запроса |
См. также
| getRealMethod |
string getRealMethod()
Возвращает «фактический» метод запроса.
Значение возвращаемого значения
| Строка | Метод запроса |
См. также
| getMethod |
string getMimeType(string $format)
Возвращает MIME-тип, связанный с форматом.
Параметры
| Строка | $format | Формат |
Значение возвращаемого значения
| Строка | Соответствующий MIME-тип (null, если не найден) |
string|null getFormat(string $mimeType)
Возвращает формат, связанный с MIME-типом.
Параметры
| Строка | $mimeType | Соответствующий MIME-тип |
Значение возвращаемого значения
| string|null | Формат (null, если не найден) |
setFormat(string $format, string|array $mimeTypes)
Связывает формат с типами MIME.
Параметры
| string | $format | Формат |
| string|array | $mimeTypes | Связанные типы MIME (предпочтительный должен быть первым, так как он будет использован в качестве типа содержимого) |
string getRequestFormat(string $default = 'html')
Получает формат запроса.
Вот процесс определения формата:
- Формат, определенный пользователем (с помощью setRequestFormat())
- Параметр запроса _format
- $default
Параметры
| string | $default | Формат по умолчанию |
Возвращаемое значение
| string | Формат запроса |
setRequestFormat(string $format)
Устанавливает формат запроса.
Параметры
| string | $format | Формат запроса. |
string|null getContentType()
Получает формат, связанный с запросом.
Возвращаемое значение
| string|null | Формат (null, если тип содержимого отсутствует) |
setDefaultLocale(string $locale)
Устанавливает локаль по умолчанию.
Параметры
| string | $locale |
setLocale(string $locale)
Устанавливает локаль.
Параметры
| string | $locale |
string getLocale()
Получить локаль.
Возвращаемое значение
| string |
Boolean isMethod(string $method)
Проверяет, является ли метод запроса указанного типа.
Параметры
| string | $method | Метод запроса в верхнем регистре (GET, POST и т.д.). |
Возвращаемое значение
| Boolean |
Boolean isMethodSafe()
Проверяет, является ли метод безопасным.
Возвращаемое значение
| Boolean |
string|resource getContent(Boolean $asResource = false)
Возвращает содержимое тела запроса.
Параметры
| Boolean | $asResource | Если true, будет возвращено ресурс |
Возвращаемое значение
| string|resource | Содержимое тела запроса или ресурс для чтения потока тела. |
Исключения
| LogicException |
array getETags()
Получает ETags.
Возвращаемое значение
| array | Теги сущности |
Boolean isNoCache()
Возвращаемое значение
| Boolean |
string|null getPreferredLanguage(array $locales = null)
Возвращает предпочтительный язык.
Параметры
| array | $locales | Массив доступных локалей в порядке приоритета |
Возвращаемое значение
| string|null | Предпочтительная локаль |
array getLanguages()
Получает список языков, приемлемых для браузера клиента.
Возвращаемое значение
| array | Языки, упорядоченные по предпочтениям пользователя в браузере |
array getCharsets()
Получает список наборов символов, приемлемых для браузера клиента.
Возвращаемое значение
| array | Список наборов символов в порядке предпочтения |
array getAcceptableContentTypes()
Получает список типов содержимого, приемлемых для браузера клиента.
Возвращаемое значение
| array | Список типов содержимого в порядке предпочтения |
Boolean isXmlHttpRequest()
Возвращает true, если запрос является XMLHttpRequest.
Функционирует, если ваша JavaScript-библиотека установила заголовок HTTP X-Requested-With. Известно, что работает с распространенными JavaScript-фреймворками:
Возвращаемое значение
| Boolean | true, если запрос является XMLHttpRequest, иначе false |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/HttpFoundation/ApacheRequest.html