Spec-Zone.ru › CakePHP 4.3

Класс ServerRequest

Класс, который помогает обернуть информацию о запросе и подробности об одном запросе. Предоставляет методы, обычно используемые для интроспекции заголовков запроса и тела запроса.

Пространство имён: Cake\Http

Краткое описание свойств

  • $_detectorCache protected
    array

    Кэш экземпляров для результатов вызовов is(что-то)

  • $_detectors protected static
    array<callable|array>

    Встроенные детекторы, используемые с is(), могут быть изменены с помощью addDetector().

  • $_environment protected
    array

    Массив данных среды.

  • $attributes protected
    array

    Хранит дополнительные атрибуты, прикреплённые к запросу.

  • $base protected
    string

    Базовый путь URL.

  • $cookies protected
    array

    Массив данных cookie.

  • $data protected
    object|array|null

    Массив данных POST. Будет содержать данные формы, а также загруженные файлы. В запросах PUT/PATCH/DELETE это свойство будет содержать данные, закодированные в формате form-urlencoded.

  • $emulatedAttributes protected
    array<string>

    Список свойств, эмулируемых методами атрибутов PSR7.

  • $flash protected
    Cake\Http\FlashMessage

    Экземпляр объекта FlashMessage, относящегося к этому запросу.

  • $params protected
    array

    Массив параметров, разобранных из URL.

  • $protocol protected
    string|null

    Используемая версия HTTP-протокола.

  • $query protected
    array

    Массив аргументов строки запроса.

  • $requestTarget protected
    string|null

    Целевой адрес запроса, если переопределён.

  • $session protected
    Cake\Http\Session

    Экземпляр объекта Session, относящегося к этому запросу.

  • $stream protected
    Psr\Http\Message\StreamInterface

    Поток тела запроса. Содержит php://input, если не используется опция конструктора input.

  • $trustProxy public
    bool

    Следует ли доверять заголовкам HTTP_X, установленным большинством балансировщиками нагрузки. Устанавливается в true только в том случае, если ваше приложение работает за балансировщиками/прокси, которые вы контролируете.

  • $trustedProxies protected
    array<string>

    Список доверенных прокси.

  • $uploadedFiles protected
    array

    Массив объектов Psr\Http\Message\UploadedFileInterface.

  • $uri protected
    Psr\Http\Message\UriInterface

    Экземпляр Uri.

  • $webroot protected
    string

    Сегмент пути webroot для запроса.

Краткое описание методов

  • __call() public

    Обработчик отсутствующего метода, обрабатывает обертывание методов старого стиля типа isAjax()

  • __construct() public

    Создает новый объект запроса.

  • _acceptHeaderDetector() protected

    Определяет, присутствует ли определённый заголовок Accept.

  • _environmentDetector() protected

    Определяет, присутствует ли определённая переменная среды.

  • _headerDetector() protected

    Определяет, присутствует ли определённый заголовок.

  • _is() protected

    Вспомогательная функция для общедоступной функции is()

  • _paramDetector() protected

    Определяет, присутствует ли определённый параметр запроса.

  • _parseAcceptWithQualifier() protected

    Парсинг заголовков Accept* с опциями квалификатора.

  • _setConfig() protected

    Обработка данных конфигурации/настроек в свойства.

  • acceptLanguage() public

    Получение языков, принятых клиентом, или проверка принятия определённого языка.

  • accepts() public

    Определение типов контента, принятых клиентом, или проверка принятия определённого типа контента.

  • addDetector() public static

    Добавление нового детектора в список детекторов, которые может использовать запрос. Существует несколько различных типов детекторов, которые можно задать.

  • allowMethod() public

    Разрешение только определённых HTTP методов запроса. Если метод запроса не соответствует ожидаемому, отображается ошибка 405, и устанавливается необходимый заголовок ответа «Allow».

  • clearDetectorCache() public

    Очистка кэша детекторов экземпляра, используемого функцией is()

  • clientIp() public

    Получение IP-адреса клиента, используемого или указанного им.

  • contentType() public

    Получение типа контента, используемого в данном запросе.

  • domain() public

    Получение доменного имени, включая сегменты $tldLength доменной зоны.

  • getAttribute() public

    Чтение атрибута из запроса или получение значения по умолчанию.

  • getAttributes() public

    Получение всех атрибутов в запросе.

  • getBody() public

    Получение тела сообщения.

  • getCookie() public

    Чтение данных cookie из данных cookie запроса.

  • getCookieCollection() public

    Получение коллекции cookie на основе cookie запроса.

  • getCookieParams() public

    Получение всех данных cookie из запроса.

  • getData() public

    Обеспечивает безопасный доступ к данным запроса. Позволяет использовать пути, совместимые с Hash::get().

  • getEnv() public

    Получение значения из данных среды запроса. Использует env(), если ключ не задан в свойстве $environment.

  • getFlash() public

    Возвращает экземпляр объекта FlashMessage для данного запроса.

  • getHeader() public

    Получение одного заголовка из запроса.

  • getHeaderLine() public

    Получение одного заголовка в виде строки из запроса.

  • getHeaders() public

    Получение всех заголовков в запросе.

  • getMethod() public

    Получение HTTP-метода, используемого для данного запроса. Существует несколько способов задания метода.

  • getParam() public

    Безопасный доступ к значениям в $this->params.

  • getParsedBody() public

    Получение обработанных данных тела запроса.

  • getPath() public

    Получение пути текущего запроса.

  • getProtocolVersion() public

    Получение версии HTTP-протокола в виде строки.

  • getQuery() public

    Чтение определённого значения параметра запроса или пути с точками.

  • getQueryParams() public

    Получение всех параметров запроса в соответствии со спецификациями PSR-7. Для чтения определённых значений параметров запроса используйте альтернативный метод getQuery().

  • getRequestTarget() public

    Получение целевого объекта запроса.

  • getServerParams() public

    Получение всех параметров среды сервера.

  • getSession() public

    Возвращает экземпляр объекта Session для данного запроса.

  • getTrustedProxies() public

    Получение доверенных прокси-серверов.

  • getUploadedFile() public

    Получение загрученного файла по пути с точками.

  • getUploadedFiles() public

    Получение массива загруженных файлов из запроса.

  • getUri() public

    Получение экземпляра URI.

  • hasHeader() public

    Проверка наличия заголовка в запросе.

  • host() public

    Получение хоста, на котором был обработан запрос.

  • input() public deprecated

    Чтение данных из php://input. Полезно при взаимодействии с содержимым тела запроса в формате XML или JSON.

  • is() public

    Проверка, является ли запрос определённого типа.

  • isAll() public

    Проверка соответствия запроса всем заданным типам.

  • normalizeHeaderName() protected

    Нормализовать имя заголовка в версию SERVER.

  • parseAccept() public

    Разбирать заголовок HTTP_ACCEPT и возвращать отсортированный массив с типами содержимого в качестве ключей и значениями pref.

  • port() public

    Получить порт, на котором обрабатывался запрос.

  • processUrlOption() protected

    Установить переменные окружения на основе параметра url для облегчения генерации экземпляра UriInterface.

  • referer() public

    Возвращает referer, который направил этот запрос.

  • scheme() public

    Получить текущий схему URL, используемый для запроса.

  • setTrustedProxies() public

    зарегистрировать доверенные прокси

  • subdomains() public

    Получить домены верхнего уровня для хоста.

  • validateUploadedFiles() protected

    Рекурсивно валидировать загруженные данные файлов.

  • withAddedHeader() public

    Получить изменённый запрос с предоставленным заголовком.

  • withAttribute() public

    Возвращает экземпляр со указанным атрибутом запроса.

  • withBody() public

    Возвращает экземпляр со указанным телом сообщения.

  • withCookieCollection() public

    Заменить куки в запросе на те, которые содержатся в предоставленной CookieCollection.

  • withCookieParams() public

    Заменить куки и получить новый экземпляр запроса.

  • withData() public

    Обновить запрос новым элементом данных запроса.

  • withEnv() public

    Обновить запрос новым элементом данных среды.

  • withHeader() public

    Получить изменённый запрос с предоставленным заголовком.

  • withMethod() public

    Обновить метод запроса и получить новый экземпляр.

  • withParam() public

    Обновить запрос новым параметром маршрутизации

  • withParsedBody() public

    Обновить разобранное тело и получить новый экземпляр.

  • withProtocolVersion() public

    Возвращает экземпляр со указанной версией HTTP протокола.

  • withQueryParams() public

    Обновить данные строки запроса и получить новый экземпляр.

  • withRequestTarget() public

    Создать новый экземпляр со специфической целью запроса.

  • withUploadedFiles() public

    Обновить запрос, заменив файлы и создав новый экземпляр.

  • withUri() public

    Возвращает экземпляр со указанным uri

  • withoutAttribute() public

    Возвращает экземпляр без указанного атрибута запроса.

  • withoutData() public

    Обновить запрос, удалив элемент данных.

  • withoutHeader() public

    Получить изменённый запрос без предоставленного заголовка.

Подробное описание методов

__call() public

__call(string $name, array $params): bool

Обработчик отсутствующего метода, обрабатывает обертывание методов старого стиля isAjax()

Параметры

string $name

Вызываемый метод

array $params

Массив параметров для вызова метода

Возвращает

bool

Исключения

BadMethodCallException
при вызове неверного метода.

__construct() public

__construct(array<string, mixed> $config = [])

Создает новый объект запроса.

Вы можете предоставить данные как массив, так и строку. Если вы используете строку, вы можете предоставить только URL запроса. Использование массива позволит вам предоставить следующие ключи:

  • post Данные POST или данные, не являющиеся частью строки запроса
  • query Дополнительные данные из строки запроса.
  • files Загруженные файлы в нормализованной структуре, где каждый лист — экземпляр UploadedFileInterface.
  • cookies Куки для этого запроса.
  • environment Данные $_SERVER и $_ENV.
  • url URL без базового пути для запроса.
  • uri Объект PSR7 UriInterface. Если null, он будет создан из url или environment.
  • base Базовый URL запроса.
  • webroot Директория webroot для запроса.
  • input Данные, которые поступают из php://input, это полезно для моделирования запросов с данными put, patch или delete.
  • session Экземпляр объекта Session

Параметры

array<string, mixed> $config необязательно

Массив данных запроса для создания запроса.

_acceptHeaderDetector() protected

_acceptHeaderDetector(array $detect): bool

Определяет, присутствует ли определенный заголовок Accept.

Параметры

array $detect

Массив параметров детектирования.

Возвращает

bool

_environmentDetector() protected

_environmentDetector(array $detect): bool

Определяет, присутствует ли определенная переменная среды.

Параметры

array $detect

Массив параметров детектирования.

Возвращает

bool

_headerDetector() protected

_headerDetector(array $detect): bool

Определяет, присутствует ли определенный заголовок.

Параметры

array $detect

Массив параметров детектирования.

Возвращает

bool

_is() protected

_is(string $type, array $args): bool

Вспомогательная функция для public функции is()

Параметры

string $type

Тип запроса, который вы хотите проверить.

array $args

Массив пользовательских аргументов детектирования.

Возвращает

bool

_paramDetector() protected

_paramDetector(array $detect): bool

Определяет, присутствует ли определенный параметр запроса.

Параметры

array $detect

Массив параметров детектирования.

Возвращает

bool

_parseAcceptWithQualifier() protected

_parseAcceptWithQualifier(string $header): array

Парсит заголовки Accept* с параметрами квалификаторов.

Извлекаются только квалификаторы, все другие расширения Accept игнорируются, так как они редко используются.

Параметры

string $header

Заголовок для парсинга.

Возвращает

array

_setConfig() protected

_setConfig(array<string, mixed> $config): void

Обрабатывает данные конфигурации/настроек в свойства.

Параметры

array<string, mixed> $config

Данные конфигурации для использования.

Возвращает

void

acceptLanguage() public

acceptLanguage(string|null $language = null): array|bool

Получить языки, принятые клиентом, или проверить, принимается ли определенный язык.

Получить список принятых языков:

\Cake\Http\ServerRequest::acceptLanguage();

Проверить, принимается ли определенный язык:

\Cake\Http\ServerRequest::acceptLanguage('es-es');

Параметры

string|null $language необязательно

Язык для проверки.

Возвращает

array|bool

accepts() public

accepts(string|null $type = null): array<string>|bool

Выяснить, какие типы содержимого принимает клиент, или проверить, принимает ли он определенный тип содержимого.

Получить все типы:

$this->request->accepts();

Проверить один тип:

$this->request->accepts('application/json');

Этот метод отсортирует возвращаемые типы содержимого в соответствии с приоритетами, указанными клиентом.

Параметры

string|null $type необязательно

Тип содержимого для проверки. Оставьте null, чтобы получить все типы, принимаемые клиентом.

Возвращает

array<string>|bool

addDetector() public static

addDetector(string $name, callable|array $detector): void

Добавляет новый детектор в список детекторов, которые может использовать запрос. Существует несколько различных типов детекторов, которые могут быть установлены.

Сравнение по коллбэку

Детекторы коллбэка позволяют указать вызываемый объект, который будет обрабатывать проверку. Коллбэк получит объект запроса в качестве единственного параметра.

addDetector('custom', function ($request) { //Return a boolean });

Сравнение по значению переменной среды

Сравнение по значению переменной среды, сравнивает значение, полученное из env() со значением, которое известно. Значение переменной среды сравнивается на равенство с предоставленным значением.

addDetector('post', ['env' => 'REQUEST_METHOD', 'value' => 'POST']);

Сравнение параметров запроса

Разрешает настраиваемые детекторы для параметров запроса.

addDetector('admin', ['param' => 'prefix', 'value' => 'admin']);

Сравнение Accept

Разрешает детектору сравнивать со значением заголовка Accept.

addDetector('csv', ['accept' => 'text/csv']);

Сравнение заголовков

Разрешает сравнение по одному или нескольким заголовкам.

addDetector('fancy', ['header' => ['X-Fancy' => 1]);

Типы param, env и сравнения позволяют использовать следующие варианты сравнения значений:

Сравнение по значению шаблону

Сравнение по значению шаблону позволяет сравнить значение, полученное из env() с регулярным выражением.

addDetector('iphone', ['env' => 'HTTP_USER_AGENT', 'pattern' => '/iPhone/i']);

Сравнение на основе опций

Сравнения на основе опций используют список опций для создания регулярного выражения. Последующие вызовы добавления уже определенного детектора опций объединят опции.

addDetector('mobile', ['env' => 'HTTP_USER_AGENT', 'options' => ['Fennec']]);

Вы также можете сравнивать с несколькими значениями, используя ключ options. Это полезно, когда вам нужно проверить, содержится ли значение запроса в списке опций.

addDetector('extension', ['param' => '_ext', 'options' => ['pdf', 'csv']]

Параметры

string $name

Имя детектора.

callable|array $detector

Вызываемый объект или массив опций для определения детектора.

Возвращает

void

allowMethod() public

allowMethod(array<string>|string $methods): true

Разрешить только определенные HTTP-методы, если метод запроса не соответствует ожидаемому, отобразится ошибка 405, и будет установлен необходимый заголовок ответа "Allow".

Пример:

$this->request->allowMethod('post'); или $this->request->allowMethod(['post', 'delete']);

Если запрос будет GET, заголовок ответа "Allow: POST, DELETE" будет установлен, и будет возвращена ошибка 405.

Параметры

array<string>|string $methods

Разрешённые HTTP-методы.

Возвращает

true

Исключения

Cake\Http\Exception\MethodNotAllowedException

clearDetectorCache() public

clearDetectorCache(): void

Очищает кэш детектора экземпляра, используемый функцией is()

Возвращает

void

clientIp() public

clientIp(): string

Получить IP-адрес клиента или IP-адрес, указанный им.

Возвращает

string

contentType() public

contentType(): string|null

Получить тип контента, используемый в этом запросе.

Возвращает

string|null

domain() public

domain(int $tldLength = 1): string

Получить имя домена и включить $tldLength сегментов доменной зоны.

Параметры

int $tldLength необязательно

Количество сегментов, содержащихся в вашей доменной зоне. Например: example.com содержит 1 доменную зону. В то время как example.co.uk содержит 2.

Возвращает

string

getAttribute() public

getAttribute(string $name, mixed $default = null): mixed

Прочитать атрибут из запроса или получить значение по умолчанию

Возвращает единственный атрибут извлеченного запроса, как описано в getAttributes(). Если атрибут не был ранее задан, возвращает значение по умолчанию.

Этот метод исключает необходимость метода hasAttribute(), так как он позволяет указать значение по умолчанию, если атрибут не найден.

Параметры

string $name

Имя атрибута.

mixed $default необязательно

Значение по умолчанию, если атрибут не задан.

Возвращает

mixed

getAttributes() public

getAttributes(): array

Получить все атрибуты в запросе.

Это будет включать атрибуты params, webroot, base и here, которые предоставляет CakePHP.

Возвращает

array

getBody() public

getBody(): Psr\Http\Message\StreamInterface

Получить тело сообщения.

Возвращает

Psr\Http\Message\StreamInterface

getCookie() public

getCookie(string $key, array|string|null $default = null): array|string|null

Прочитать данные cookie из данных cookie запроса.

Параметры

string $key

Ключ или путь с точками, который вы хотите прочитать.

array|string|null $default необязательно

Значение по умолчанию, если cookie не установлен.

Возвращает

array|string|null

getCookieCollection() public

getCookieCollection(): Cake\Http\Cookie\CookieCollection

Получить коллекцию cookie на основе cookie запроса

CookieCollection позволяет взаимодействовать с cookie запроса с помощью объектов \Cake\Http\Cookie\Cookie и может упростить преобразование cookie запроса в cookie ответа.

Этот метод будет создавать новую коллекцию cookie каждый раз, когда он вызывается. Это оптимизация, которая позволяет уменьшить количество выделенных объектов, пока не потребуется более сложная CookieCollection. В общем, вы должны отдавать предпочтение getCookie() и getCookieParams() перед этим методом. Использование CookieCollection идеально подходит, если ваши cookie содержат сложные данные, закодированные в JSON.

Возвращает

Cake\Http\Cookie\CookieCollection

getCookieParams() public

getCookieParams(): array

Получить все данные cookie из запроса.

Возвращает cookie, отправленные клиентом серверу.

Данные ДОЛЖНЫ быть совместимы со структурой суперглобальной переменной $_COOKIE.

Возвращает

array

getData() public

getData(string|null $name = null, mixed $default = null): mixed

Предоставляет безопасный доступ к данным запроса. Позволяет использовать пути, совместимые с Hash::get().

Чтение значений.

// get all data
$request->getData();

// Read a specific field.
$request->getData('Post.title');

// With a default value.
$request->getData('Post.not there', 'default value');

При чтении значений вы получите null для ключей/значений, которые не существуют.

Разработчикам рекомендуется использовать getParsedBody(), если им нужен весь массив данных, так как он совместим с PSR-7, а этот метод нет. С помощью Hash::get() вы также можете получить отдельные параметры.

Альтернатива PSR-7

$value = Hash::get($request->getParsedBody(), 'Post.id');

Параметры

string|null $name необязательно

Имя значения с разделителями «точка» для чтения. Или null для чтения всех данных.

mixed $default необязательно

Данные по умолчанию.

Возвращает

mixed

getEnv() public

getEnv(string $key, string|null $default = null): string|null

Получить значение из данных среды запроса. Использовать env(), если ключ не установлен в свойстве $environment.

Параметры

string $key

Ключ, который вы хотите прочитать.

string|null $default необязательно

Значение по умолчанию при попытке извлечь значение переменной окружения, которая не существует.

Возвращает

string|null

getFlash() public

getFlash(): Cake\Http\FlashMessage

Возвращает экземпляр объекта FlashMessage для этого запроса

Возвращает

Cake\Http\FlashMessage

getHeader() public

getHeader(string $name): array<string>

Получить один заголовок из запроса.

Возвращает значение заголовка как массив. Если заголовок отсутствует, возвращается пустой массив.

Параметры

string $name

Заголовок, который нужно получить (регистронезависимо)

Возвращает

array<string>

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса запроса сервера PSR-7.

getHeaderLine() public

getHeaderLine(string $name): string

Получить один заголовок в виде строки из запроса.

Этот метод возвращает все значения заголовков заданного имени заголовка без учета регистра в виде строки, конкатенированной вместе с помощью запятой.

ПРИМЕЧАНИЕ: не все значения заголовков могут быть адекватно представлены с помощью конкатенации запятыми. Для таких заголовков используйте getHeader() вместо этого и предоставьте свой собственный разделитель при конкатенации.

Если заголовок не отображается в сообщении, этот метод ДОЛЖЕН вернуть пустую строку.

Параметры

string $name

Заголовок, который нужно получить (регистронезависимо)

Возвращает

string

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса запроса сервера PSR-7.

getHeaders() public

getHeaders(): array<string[]>

Получить все заголовки в запросе.

Возвращает ассоциативный массив, где имена заголовков являются ключами, а значениями — список значений заголовков.

Хотя имена заголовков не чувствительны к регистру, getHeaders() нормализует заголовки.

Возвращает

array<string[]>

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса запроса сервера PSR-7.

getMethod() public

getMethod(): string

Получить HTTP-метод, используемый для этого запроса. Существует несколько способов указать метод.

  • Если ваш клиент поддерживает, вы можете использовать собственные HTTP-методы.
  • Вы можете установить заголовок HTTP-X-Method-Override.
  • Вы можете отправить ввод с именем _method

Любой из этих 3 подходов может быть использован для установки HTTP-метода, используемого CakePHP внутренне, и повлияет на результат этого метода.

Возвращает

string

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса запроса сервера PSR-7.

getParam() public

getParam(string $name, mixed $default = null): mixed

Безопасно получить значения в $this->params.

Параметры

string $name

Имя или путь с точками к параметру.

mixed $default необязательно

Значение по умолчанию, если $name не задано. Значение по умолчанию null.

Возвращает

mixed

getParsedBody() public

getParsedBody(): object|array|null

Получить данные тела запроса, обработанные в виде массива.

Если тип контента запроса — application/x-www-form-urlencoded или multipart/form-data, а метод запроса — POST, это будут данные POST. Для других типов контента это может быть десериализованное тело запроса.

Возвращает

object|array|null

getPath() public

getPath(): string

Получить путь текущего запроса.

Возвращает

string

getProtocolVersion() public

getProtocolVersion(): string

Возвращает версию HTTP-протокола в виде строки.

Строка ДОЛЖНА содержать только номер версии HTTP (например, "1.1", "1.0").

Возвращает

string

getQuery() public

getQuery(string|null $name = null, mixed $default = null): array|string|null

Чтение определенного значения запроса или пути с точками.

Разработчикам рекомендуется использовать getQueryParams(), если им нужен весь массив запроса, так как он соответствует PSR-7, а этот метод нет. Используя Hash::get(), вы также можете получить отдельные параметры.

Альтернатива PSR-7

$value = Hash::get($request->getQueryParams(), 'Post.id');

Параметры

string|null $name необязательно

Имя или путь с точками до параметра запроса или null для чтения всех.

mixed $default необязательно

Значение по умолчанию, если указанный параметр не задан, и $name не равен null.

Возвращает

array|string|null

См. также

ServerRequest::getQueryParams()

getQueryParams() public

getQueryParams(): array

Получить все параметры запроса в соответствии со спецификациями PSR-7. Для чтения определенных значений запроса используйте альтернативный метод getQuery().

Возвращает десериализованные аргументы строки запроса, если таковые имеются.

Примечание: параметры запроса могут не синхронизироваться с параметрами URI или сервера. Если вам нужно убедиться, что вы получаете только исходные значения, вам может потребоваться разобрать строку запроса из getUri()->getQuery() или из параметра сервера QUERY_STRING.

Возвращает

array

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса серверного запроса PSR-7.

getRequestTarget() public

getRequestTarget(): string

Возвращает целевой объект запроса.

Возвращает целевой объект запроса сообщения, либо как он был запрошен, либо как он был установлен с withRequestTarget(). По умолчанию возвращает относительный путь приложения без базового каталога и строку запроса, определенную в переменной окружения SERVER.

Возвращает

string

getServerParams() public

getServerParams(): array

Получить все параметры среды сервера.

Прочитать все данные «среды» или «сервера», которые использовались для создания этого запроса.

Возвращает

array

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса серверного запроса PSR-7.

getSession() public

getSession(): Cake\Http\Session

Возвращает экземпляр объекта Session для этого запроса

Возвращает

Cake\Http\Session

getTrustedProxies() public

getTrustedProxies(): array<string>

Получить доверенные прокси-серверы

Возвращает

array<string>

getUploadedFile() public

getUploadedFile(string $path): Psr\Http\Message\UploadedFileInterface|null

Получить загруженный файл по пути с точками.

Параметры

string $path

Путь с точками к файлу, который вы хотите получить.

Возвращает

Psr\Http\Message\UploadedFileInterface|null

getUploadedFiles() public

getUploadedFiles(): array

Получить массив загруженных файлов из запроса.

Этот метод возвращает метаданные загрузки в нормализованном дереве, где каждый лист является экземпляром Psr\Http\Message\UploadedFileInterface.

Эти значения МОГУТ быть подготовлены из $_FILES или тела сообщения во время создания, или МОГУТ быть вставлены с помощью withUploadedFiles().

Возвращает

array

getUri() public

getUri(): Psr\Http\Message\UriInterface

Получить экземпляр URI.

Этот метод ДОЛЖЕН возвращать экземпляр UriInterface.

Возвращает

Psr\Http\Message\UriInterface

hasHeader() public

hasHeader(string $name): bool

Проверить, установлен ли заголовок в запросе.

Параметры

string $name

Заголовок, который вы хотите получить (регистронезависимо)

Возвращает

bool

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса серверного запроса PSR-7.

host() public

host(): string|null

Получить хост, на котором был обработан запрос.

Возвращает

string|null

input() public

input(callable|null $callback = null, mixed ...$args): mixed

Чтение данных из php://input. Полезно при взаимодействии с содержимым тела запроса XML или JSON.

Получение входных данных с функцией декодирования:

$this->request->input('json_decode');

Получение входных данных с помощью функции декодирования и дополнительных параметров:

$this->request->input('Xml::build', ['return' => 'DOMDocument']);

Любые дополнительные параметры применяются к обратной функции в том порядке, в котором они предоставлены.

Параметры

callable|null $callback необязательно

Обратная функция декодирования, которая преобразует строковые данные в другое представление. Оставьте пустым, чтобы получить исходные входные данные. Вы также можете передать дополнительные параметры для обратной функции декодирования с помощью аргументов var, см. выше.

mixed ...$args

Дополнительные аргументы

Возвращает

mixed

is() public

is(array<string>|string $type, mixed ...$args): bool

Проверить, является ли запрос определенного типа.

Использует встроенные правила распознавания, а также дополнительные правила, определенные с помощью {@link \Cake\Http\ServerRequest::addDetector()}. Любой детектор можно вызвать как is($type) или is$Type().

Параметры

array<string>|string $type

Тип запроса, который вы хотите проверить. Если массив, этот метод вернет true, если запрос соответствует любому типу.

mixed ...$args

Список аргументов

Возвращает

bool

isAll() public

isAll(array<string> $types): bool

Проверка того, что запрос соответствует всем указанным типам.

Позволяет проверить несколько типов и объединить результаты. См. Request::is() для того, как добавить дополнительные типы и встроенные типы.

Параметры

array<string> $types

Типы для проверки.

Возвращает

bool

См. также

\Cake\Http\ServerRequest::is()

normalizeHeaderName() protected

normalizeHeaderName(string $name): string

Нормализация имени заголовка в версию SERVER.

Параметры

string $name

Имя заголовка.

Возвращает

string

parseAccept() public

parseAccept(): array

Разбор заголовка HTTP_ACCEPT и возвращение отсортированного массива с типами содержимого в качестве ключей и значениями предпочтений.

В целом, вы хотите использовать {@link \Cake\Http\ServerRequest::accepts()} для получения простого списка поддерживаемых типов содержимого.

Возвращает

array

port() public

port(): string|null

Получить порт, на котором был обработан запрос.

Возвращает

string|null

processUrlOption() protected

processUrlOption(array<string, mixed> $config): array<string, mixed>

Установка переменных среды на основе параметра url для облегчения создания экземпляра UriInterface.

Параметр query также обновляется на основе строки запроса URL.

Параметры

array<string, mixed> $config

Массив конфигурации.

Возвращает

array<string, mixed>

referer() public

referer(bool $local = true): string|null

Возвращает referer, который направил этот запрос.

Параметры

bool $local необязательно

Попытка вернуть локальный адрес. Локальные адреса не содержат имена хостов.

Возвращает

string|null

scheme() public

scheme(): string|null

Получить текущую схему URL, используемую для запроса.

Например, 'http' или 'https'

Возвращает

string|null

setTrustedProxies() public

setTrustedProxies(array<string> $proxies): void

зарегистрировать доверенные прокси

Параметры

array<string> $proxies

список IP-адресов доверенных прокси

Возвращает

void

subdomains() public

subdomains(int $tldLength = 1): array<string>

Получить доменные имена поддоменов для хоста.

Параметры

int $tldLength необязательно

Количество сегментов, содержащихся в вашем TLD. Например: example.com содержит 1 TLD. В то время как example.co.uk содержит 2.

Возвращает

array<string>

validateUploadedFiles() protected

validateUploadedFiles(array $uploadedFiles, string $path): void

Рекурсивно валидирует данные загруженных файлов.

Параметры

array $uploadedFiles

Новый массив файлов для проверки.

string $path

Путь до сих пор.

Возвращает

void

Исключения

InvalidArgumentException
Если какие-либо листовые элементы не являются допустимыми файлами.

withAddedHeader() public

withAddedHeader(string $name, string|string[] $value): static

Получить измененный запрос с предоставленным заголовком.

Существующие значения заголовков будут сохранены. Предоставленное значение будет добавленное к существующим значениям.

Параметры

string $name

Имя заголовка.

string|string[] $value

Значение заголовка

Возвращает

static

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса серверного запроса PSR-7.

withAttribute() public

withAttribute(string $name, mixed $value): static

Возвращает экземпляр со значением указанного атрибута запроса.

Этот метод позволяет задать единственный производный атрибут запроса, как описано в getAttributes().

Этот метод ОДНОЗНАЧНО должен быть реализован таким образом, чтобы сохранить неизменяемость сообщения, и ОДНОЗНАЧНО должен возвращать экземпляр, у которого обновлен атрибут.

Параметры

string $name

Имя атрибута.

mixed $value

Значение атрибута.

Возвращает

static

withBody() public

withBody(StreamInterface $body): static

Возвращает экземпляр со значением указанного тела сообщения.

Тело ДОЛЖНО быть объектом StreamInterface.

Этот метод ОДНОЗНАЧНО должен быть реализован таким образом, чтобы сохранить неизменяемость сообщения, и ОДНОЗНАЧНО должен возвращать новый экземпляр, который имеет новый поток тела.

Параметры

StreamInterface $body

Новое тело запроса

Возвращает

static

withCookieCollection() public

withCookieCollection(Cake\Http\Cookie\CookieCollection $cookies): static

Заменить файлы cookie в запросе теми, которые содержатся в предоставленном CookieCollection.

Параметры

Cake\Http\Cookie\CookieCollection $cookies

Коллекция файлов cookie

Возвращает

static

withCookieParams() public

withCookieParams(array $cookies): static

Заменить файлы cookie и получить новый экземпляр запроса.

Данные НЕ ОБЯЗАТЕЛЬНО должны быть взяты из суперглобальной переменной $_COOKIE, но ОДНОЗНАЧНО должны быть совместимы со структурой $_COOKIE. Обычно эти данные будут внедрены при инициализации.

Этот метод НЕ ДОЛЖЕН обновлять связанный заголовок Cookie экземпляра запроса, а также связанные значения в параметрах сервера.

Этот метод ОДНОЗНАЧНО должен быть реализован таким образом, чтобы сохранить неизменяемость сообщения, и ОДНОЗНАЧНО должен возвращать экземпляр, у которого обновлены значения файлов cookie.

Параметры

array $cookies

Новые данные файлов cookie для использования.

Возвращает

static

withData() public

withData(string $name, mixed $value): static

Обновить запрос с новым элементом данных запроса.

Возвращает обновленный объект запроса. Этот метод возвращает новый объект запроса и не изменяет запрос на месте.

Используйте withParsedBody() если вам нужно заменить все данные запроса.

Параметры

string $name

Путь с точками для вставки $value.

mixed $value

Значение для вставки в данные запроса.

Возвращает

static

withEnv() public

withEnv(string $key, string $value): static

Обновить запрос с новым элементом данных среды.

Возвращает обновленный объект запроса. Этот метод возвращает новый объект запроса и не изменяет запрос на месте.

Параметры

string $key

Ключ, который вы хотите записать.

string $value

Значение для установки

Возвращает

static

withHeader() public

withHeader(string $name, string|string[] $value): static

Получить измененный запрос с предоставленным заголовком.

Хотя имена заголовков нечувствительны к регистру, регистр заголовка будет сохранен этой функцией и возвращен из getHeaders().

Этот метод ОДНОЗНАЧНО должен быть реализован таким образом, чтобы сохранить неизменяемость сообщения, и ОДНОЗНАЧНО должен возвращать экземпляр, у которого есть новый и/или обновленный заголовок и значение.

Параметры

string $name

Имя заголовка.

string|string[] $value

Значение заголовка

Возвращает

static

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса серверного запроса PSR-7.

withMethod() public

withMethod(string $method): static

Обновить метод запроса и получить новый экземпляр.

Хотя имена методов HTTP обычно являются заглавными буквами, имена методов HTTP чувствительны к регистру, и поэтому реализации НЕ ДОЛЖНЫ изменять предоставленную строку.

Этот метод ОДНОЗНАЧНО должен быть реализован таким образом, чтобы сохранить неизменяемость сообщения, и ОДНОЗНАЧНО должен возвращать экземпляр, у которого изменился метод запроса.

Параметры

string $method

Метод HTTP для использования.

Возвращает

static

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса серверного запроса PSR-7.

withParam() public

withParam(string $name, mixed $value): static

Обновить запрос с новым параметром маршрутизации

Возвращает обновленный объект запроса. Этот метод возвращает новый объект запроса и не изменяет запрос на месте.

Параметры

string $name

Путь с точками для вставки $value.

mixed $value

Значение для вставки в параметры запроса.

Возвращает

static

withParsedBody() public

withParsedBody(null|array|object $data): static

Обновить парсированный тело и получить новый экземпляр.

Эти значения МОГУТ быть введены во время инициализации.

Если тип контента запроса — application/x-www-form-urlencoded или multipart/form-data, а метод запроса — POST, используйте этот метод ТОЛЬКО для вставки содержимого $_POST.

Данные НЕ ОБЯЗАТЕЛЬНО должны поступать из $_POST, но ОБЯЗАТЕЛЬНО должны быть результатом десериализации содержимого тела запроса. Десериализация/парсинг возвращает структурированные данные, и поэтому этот метод ПРИНИМАЕТ только массивы или объекты, или значение null, если ничего не удалось распарсить.

Например, если согласование контента определяет, что данные запроса — это JSON-данные, этот метод можно использовать для создания экземпляра запроса с десериализованными параметрами.

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранять неизменяемость сообщения и ДОЛЖЕН возвращать экземпляр с обновлёнными параметрами тела.

Параметры

null|array|object $data

Десериализованные данные тела. Обычно это массив или объект.

Возвращает

static

withProtocolVersion() public

withProtocolVersion(string $version): static

Возвращает экземпляр с указанной версией HTTP-протокола.

Строка версии ДОЛЖНА содержать только номер версии HTTP (например, "1.1", "1.0").

Параметры

string $version

Версия HTTP-протокола

Возвращает

static

withQueryParams() public

withQueryParams(array $query): static

Обновить данные строки запроса и получить новый экземпляр.

Эти значения ДОЛЖНЫ оставаться неизменными в течение входящего запроса. Они МОГУТ быть введены во время инициализации, например, из $_GET в PHP, или МОГУТ быть получены из какого-либо другого значения, например, из URI. В случаях, когда аргументы анализируются из URI, данные ДОЛЖНЫ соответствовать тому, что вернёт parse_str() в PHP для обработки дублирующихся параметров запроса и вложенных наборов.

Установка аргументов строки запроса НЕ ДОЛЖНА изменять URI, хранящийся в запросе, ни значения в параметрах сервера.

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранять неизменяемость сообщения, и ДОЛЖЕН возвращать экземпляр с обновлёнными аргументами строки запроса.

Параметры

array $query

Данные строки запроса для использования

Возвращает

static

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса запроса сервера PSR-7.

withRequestTarget() public

withRequestTarget(mixed $requestTarget): static

Создать новый экземпляр со специфическим целевым запросом.

Вы можете использовать этот метод для переопределения целевого запроса, который определяется из URI запроса. Это также позволяет изменить форму целевого запроса на абсолютную форму, форму авторизации или форму звёздочки.

Параметры

mixed $requestTarget

Целевой запрос.

Возвращает

static

Ссылки

https://tools.ietf.org/html/rfc7230#section-2.7 (для различных форм целевых запросов, разрешенных в сообщениях запросов)

withUploadedFiles() public

withUploadedFiles(array $uploadedFiles): static

Обновить запрос, заменив файлы, и создать новый экземпляр.

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранять неизменяемость сообщения и ДОЛЖЕН возвращать экземпляр с обновленными параметрами тела.

Параметры

array $uploadedFiles

Массив объектов загруженных файлов.

Возвращает

static

Исключения

InvalidArgumentException
при $files содержит невалидный объект.

withUri() public

withUri(UriInterface $uri, bool $preserveHost = false): static

Возвращает экземпляр со указанным uri

Предупреждение Замена Uri не обновит атрибуты base, webroot, и url.

Параметры

UriInterface $uri

Новый uri запроса

bool $preserveHost optional

Удерживать ли хост.

Возвращает

static

withoutAttribute() public

withoutAttribute(string $name): static

Возвращает экземпляр без указанного атрибута запроса.

Этот метод позволяет удалить один производный атрибут запроса, как описано в getAttributes().

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранять неизменяемость сообщения, и ДОЛЖЕН возвращать экземпляр, удаляющий атрибут.

Параметры

string $name

Имя атрибута.

Возвращает

static

Исключения

InvalidArgumentException

withoutData() public

withoutData(string $name): static

Обновить запрос, удалив элемент данных.

Возвращает обновленный объект запроса. Этот метод возвращает НОВЫЙ объект запроса и не изменяет запрос на месте.

Параметры

string $name

Путь через точки для удаления.

Возвращает

static

withoutHeader() public

withoutHeader(string $name): static

Получить измененный запрос без указанного заголовка.

Разрешение заголовка ДОЛЖНО выполняться без учета регистра.

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранять неизменяемость сообщения и ДОЛЖЕН возвращать экземпляр, удаляющий указанный заголовок.

Параметры

string $name

Имя заголовка для удаления.

Возвращает

static

Ссылки

http://www.php-fig.org/psr/psr-7/ Этот метод является частью интерфейса запроса сервера PSR-7.

Подробное описание свойства

$_detectorCache protected

Кэш экземпляров для результатов вызовов is(что-то)

Тип

array

$_detectors protected static

Встроенные детекторы, используемые с is(). Их можно изменить с помощью addDetector().

Существует несколько способов указать детектор. Смотрите \Cake\Http\ServerRequest::addDetector() для различных форматов и способов определения детекторов.

Тип

array<callable|array>

$_environment protected

Массив данных среды.

Тип

array

$attributes protected

Хранит дополнительные атрибуты, прикрепленные к запросу.

Тип

array

$base protected

Базовый путь URL.

Тип

string

$cookies protected

Массив данных cookie.

Тип

array

$data protected

Массив данных POST. Будет содержать данные формы и загруженные файлы. В запросах PUT/PATCH/DELETE это свойство будет содержать данные в формате form-urlencoded.

Тип

object|array|null

$emulatedAttributes protected

Список свойств, эмулируемых методами атрибутов PSR7.

Тип

array<string>

$flash protected

Экземпляр объекта FlashMessage, относящийся к этому запросу

Тип

Cake\Http\FlashMessage

$params protected

Массив параметров, извлеченных из URL.

Тип

array

$protocol protected

Используемая версия HTTP-протокола.

Тип

string|null

$query protected

Массив аргументов строки запроса

Тип

array

$requestTarget protected

Целевой ресурс запроса, если он переопределен

Тип

string|null

$session protected

Экземпляр объекта Session, относящийся к этому запросу

Тип

Cake\Http\Session

$stream protected

Поток тела запроса. Содержит php://input, если не используется опция конструктора input.

Тип

Psr\Http\Message\StreamInterface

$trustProxy public

Следует ли доверять заголовкам HTTP_X, устанавливаемым большинством балансировщиков нагрузки. Устанавливается в значение true только в том случае, если ваше приложение работает за балансировщиками/прокси, которыми вы управляете.

Тип

bool

$trustedProxies protected

Список доверенных прокси.

Тип

array<string>

$uploadedFiles protected

Массив объектов Psr\Http\Message\UploadedFileInterface.

Тип

array

$uri protected

Экземпляр Uri.

Тип

Psr\Http\Message\UriInterface

$webroot protected

Сегмент пути webroot для запроса.

Тип

string

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.3/class-Cake.Http.ServerRequest.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API