Phalcon\Http\Message\ServerRequest
Финальный класс Phalcon\Http\Message\ServerRequest
Пространство имен | Phalcon\Http\Message |
Использует | Phalcon\Collection, Phalcon\Http\Message\Exception\InvalidArgumentException, Phalcon\Http\Message\Stream\Input, Psr\Http\Message\ServerRequestInterface, Psr\Http\Message\StreamInterface, Psr\Http\Message\UploadedFileInterface, Psr\Http\Message\UriInterface |
Расширяет | AbstractRequest |
Реализует | ServerRequestInterface |
PSR-7 Запрос сервера
Свойства
/** * @var Collection */ private attributes; /** * Получить куки. * * Извлекает куки, отправленные клиентом на сервер. * * Данные ДОЛЖНЫ быть совместимы со структурой * суперглобального $ _COOKIE. * * @var array */ private cookieParams; /** * Получить любые параметры, указанные в теле запроса. * * Если тип содержимого запроса - application/x-www-form-urlencoded * или multipart/form-data, а метод запроса - POST, этот метод ДОЛЖЕН * вернуть содержимое $ _POST. * * В противном случае этот метод может вернуть любые результаты десериализации содержимого * тела запроса; так как синтаксический анализ возвращает структурированное содержимое, * потенциальные типы ДОЛЖНЫ быть только массивами или объектами. * Нулевое значение указывает на отсутствие содержимого тела. * * @var mixed */ private parsedBody; /** * Получить аргументы строки запроса. * * Извлекает десериализованные аргументы строки запроса, если таковые имеются. * * Примечание: параметры запроса могут не синхронизироваться с URI * или параметрами сервера. Если вам нужно убедиться, что вы получаете только исходные * значения, вам может понадобиться проанализировать строку запроса из * `getUri()->getQuery()` или из серверного параметра `QUERY_STRING`. * * @var array */ private queryParams; /** * Получить параметры сервера. * * Извлекает данные, относящиеся к среде входящих запросов, * обычно получаемые из PHP-суперглобала $ _SERVER. * Данные НЕ ТРЕБУЮТСЯ, чтобы происходить от $ _SERVER. * * @var array */ private serverParams; /** * Получить нормализованные данные загрузки файла. * * Этот метод возвращает загружаемые метаданные в нормализованном дереве, * с каждым листом экземпляр Psr\Http\Message\UploadedFileInterface. * * ти значения МОГУТ быть подготовлены из $ _FILES или тела сообщения во время * создания экземпляра, или МОГУТ быть введены через withUploadedFiles (). * * @var array */ private uploadedFiles;
Методы
public function __construct( string $method = string, mixed $uri = null, array $serverParams = [], mixed $body = string, mixed $headers = [], array $cookies = [], array $queryParams = [], array $uploadFiles = [], mixed $parsedBody = null, string $protocol = string );
Конструктор ServerRequest.
public function getAttribute( mixed $name, mixed $defaultValue = null ): mixed;
Получить единственный производный атрибут запроса.
Получает один производный атрибут запроса, как описано в getAttributes (). Если атрибут не был ранее установлен, возвращает значение по умолчанию, как указано.
Этот метод устраняет необходимость в методе hasAttribute (), так как он позволяет указать значение по умолчанию, которое будет возвращаться, если атрибут не найден.
public function getAttributes(): array;
Получить атрибуты, полученные из запроса.
«Атрибуты» запроса могут использоваться для предоставления возможности ввода любых параметров, полученных из запроса: например, результатов операций сопоставления пути; результаты расшифровки куки; результаты десериализации не закодированных тел сообщений; и т.д. Атрибуты будут зависеть от приложения и запроса, и МОГУТ быть изменяемыми.
public function getCookieParams(): array
public function getCookieParams(): array
public function getParsedBody(): mixed
public function getQueryParams(): array
public function getServerParams(): array
public function getUploadedFiles(): array
public function withAttribute( mixed $name, mixed $value ): ServerRequest;
Вернуть экземпляр с указанным атрибутом производного запроса.
Этот метод позволяет установить один производный атрибут запроса, как описано в getAttributes ().
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения, и ДОЛЖЕН вернуть экземпляр, который имеет обновленный атрибут.
public function withCookieParams( array $cookies ): ServerRequest;
Вернуть экземпляр с указанными файлами cookie.
Данные НЕ ТРЕБУЮТСЯ от суперглобального $ _COOKIE, но ДОЛЖНЫ быть совместимы со структурой $ _COOKIE. Как правило, эти данные вводятся при создании экземпляра.
Этот метод НЕ ДОЛЖЕН обновлять связанный заголовок Cookie экземпляра запроса или связанные значения в параметрах сервера.
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения, и ДОЛЖЕН возвратить экземпляр, который имеет обновленные значения файлов cookie.
public function withParsedBody( mixed $data ): ServerRequest;
Вернуть экземпляр с указанными параметрами тела.
Они МОГУТ быть введены во время создания экземпляра.
Если тип контента запроса имеет вид application / x-www-form-urlencoded или multipart / form-data, а метод запроса - POST, используйте этот метод ТОЛЬКО для внедрения содержимого $ _POST.
Данные НЕ ОБЯЗАНЫ поступать из $ _POST, но ДОЛЖНЫ быть результатами десериализации содержимого тела запроса. Десериализация / анализ возвращает структурированные данные, и, как таковой, этот метод принимает ТОЛЬКО массивы или объекты, или нулевое значение, если ничего не было доступно для анализа.
Например, если согласование содержимого определяет, что данные запроса являются полезной нагрузкой JSON, этот метод можно использовать для создания экземпляра запроса с десериализованными параметрами.
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения, и ДОЛЖЕН возвратить экземпляр, который имеет обновленные параметры тела.
public function withQueryParams( array $query ): ServerRequest;
Вернуть экземпляр с указанными аргументами строки запроса.
Эти значения ДОЛЖНЫ оставаться неизменными в течение входящего запроса. Они МОГУТ быть введены во время создания экземпляра, например, из суперглобального значения $ _GET PHP, или МОГУТ быть получены из некоторого другого значения, такого как URI. В тех случаях, когда аргументы анализируются из URI, данные ДОЛЖНЫ быть совместимы с тем, что PHP parse_str () будет возвращать для целей обработки дублированных параметров запроса и обработки вложенных наборов.
Установка аргументов строки запроса НЕ ДОЛЖНА изменять URI, сохраненный запросом, а также значения в параметрах сервера.
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения, и ДОЛЖЕН возвратить экземпляр, который имеет обновленные аргументы строки запроса.
public function withUploadedFiles( array $uploadedFiles ): ServerRequest;
Создайте новый экземпляр с указанными загруженными файлами.
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения, и ДОЛЖЕН возвратить экземпляр, который имеет обновленные параметры тела.
public function withoutAttribute( mixed $name ): ServerRequest;
Вернуть экземпляр, который удаляет указанный производный атрибут запроса.
Этот метод позволяет удалить один производный атрибут запроса, как описано в getAttributes ().
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения, и ДОЛЖЕН возвратить экземпляр, который удаляет атрибут.