Spec-Zone.ru › CakePHP 4.2

Класс ServerRequest

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

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

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

  • $_detectorCache protected
    array

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

  • $_detectors protected static
    (array|callable)[]

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

  • $_environment protected
    array

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

  • $attributes protected
    array

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

  • $base protected
    string

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

  • $cookies protected
    array

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

  • $data protected
    array|object|null

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

  • $emulatedAttributes protected
    array

    Список свойств, эмулируемых методами атрибутов 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
    string[]

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

  • $uploadedFiles protected
    array

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

  • $uri protected
    Psr\Http\Message\UriInterface

    Экземпляр Uri.

  • $webroot protected
    string

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

END_OF_DOCUMENT_MARKER

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

  • __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()publicstatic

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

  • allowMethod()public

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

  • clearDetectorCache()public

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

  • clientIp()public

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

  • contentType()public

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

  • domain()public

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

  • 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()publicdeprecated

    Чтение данных из 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): mixed

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

Параметры

string $name

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

array $params

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

Возвращает

mixed

Выбрасывает

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

__construct() public

__construct(array $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 $config optional

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

_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 $config): void

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

Параметры

array $config

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

Возвращает

void

acceptLanguage() public

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

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

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

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

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

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

Параметры

string|null $language optional

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

Возвращает

array|bool

accepts() public

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

Определить, какие типы контента принимает клиент, или проверить, принимает ли он определенный тип контента.

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

$this->request->accepts();

Проверка на наличие одного типа:

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

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

Параметры

string|null $type optional

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

Возвращает

array|bool

addDetector() public static

addDetector(string $name, callable|array $callable): 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 $callable

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

Возвращает

void

allowMethod() public

allowMethod(string|array $methods): true

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

Пример:

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

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

Параметры

string|array $methods

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

Возвращает

true

Выбрасывает

Cake\Http\Exception\MethodNotAllowedException

clearDetectorCache() public

clearDetectorCache(): void

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

Возвращает

void

clientIp() public

clientIp(): string

Получить 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, string|array|null $default = null): string|array|null

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

Параметры

string $key

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

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

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

Возвращает

string|array|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): string[]

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

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

Параметры

string $name

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

Возвращает

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(): string[][]

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

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

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

Возвращает

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(): array|object|null

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

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

Возвращает

array|object|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(): string[]

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

Возвращает

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 необязательно

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

mixed ...$args

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

Возвращает

mixed

is() public

is(string|string[] $type, mixed ...$args): bool

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

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

Параметры

string|string[] $type

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

mixed ...$args

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

Возвращает

bool

isAll() public

isAll(string[] $types): bool

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

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

Параметры

string[] $types

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

Возвращает

bool

См. также

\Cake\Http\ServerRequest::is()

normalizeHeaderName() protected

normalizeHeaderName(string $name): string

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

Параметры

string $name

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

Возвращает

string

parseAccept() public

parseAccept(): array

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

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

Возвращает

array

port() public

port(): string|null

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

Возвращает

string|null

processUrlOption() protected

processUrlOption(array $config): array

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

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

Параметры

array $config

Конфигурационный массив.

Возвращает

array

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(string[] $proxies): void

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

Параметры

string[] $proxies

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

Возвращает

void

subdomains() public

subdomains(int $tldLength = 1): string[]

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

Параметры

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

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

Возвращает

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

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

Эти значения ДОЛЖНЫ оставаться неизменными в течение запроса. Их можно внедрить во время создания экземпляра, например, из суперглобальной переменной PHP $_GET, или вывести из какого-либо другого значения, например, из 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)[]

$_environment protected

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

Тип

array

$attributes protected

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

Тип

array

$base protected

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

Тип

string

$cookies protected

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

Тип

array

$data protected

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

Тип

array|object|null

$emulatedAttributes protected

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

Тип

array

$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

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

Тип

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.2/class-Cake.Http.ServerRequest.html

Spec-Zone.ru

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