A free and open-source book on ZF3 for beginners


4.4. Извлечение данных из HTTP-запроса

В методе действия контроллера вам, возможно, придется извлекать данные из HTTP-запроса (такие данные как переменные GET и POST, куки (cookies), HTTP-заголовки и так далее). Для этих целей, Zend Framework 3 предоставляет вам класс Zend\Http\Request, являющийся частью компонента Zend\Http.

Чтобы получить объект HTTP-запроса, внутри вашего метода действия вы можете использовать следующий код:

// Получить объект HTTP запроса
$request = $this->getRequest();

Этот код возвращает экземпляр класса Zend\Http\Request, содержащий все данные HTTP-запроса. В таблице 4.3 вы найдете самые распространенные методы класса 'Request`, а также их краткое описание.

Таблица 4.3. Методы класса @`Zend\Http\Request`.
Имя метода Описание
isGet() Проверяет, является ли запрос GET-запросом.
isPost() Проверяет, является ли запрос POST-запросом.
isXmlHttpRequest() Проверяет, является ли запрос AJAX-запросом.
isFlashRequest() Проверяет, является ли запрос Flash-запросом.
getMethod() Возвращает метод для этого запроса.
getUriString() Возвращает URI этого запроса в формате строки.
getQuery($name, $default) Возвращает параметр запроса по имени или все параметры запроса. Если параметр не найден, возвращает значение $default.
getPost($name, $default) Возвращает контейнер параметров, ответственный за параметр(ы) POST.
getCookie() Возвращает заголовок Куки.
getFiles($name, $default) Возвращает контейнер параметров, ответственный за параметры файлов или файла.
getHeaders($name, $default) Возвращает контейнер заголовка, ответственный за заголовки или все заголовки определенного имени/типа.
getHeader($name, $default) Возвращает заголовок по имени. Если заголовок не найден, возвращает значение $default.
renderRequestLine() Возвращает отформатированную начальную строку для этого HTTP-запроса.
fromString($string) Статический метод, который создает объект Request из строковой переменной.
toString() Возвращает необработанный HTTP-запрос в виде строки.

Top