Spec-Zone.ru › Phalcon 3

Класс Phalcon\Http\Request

реализует Phalcon\Http\RequestInterface, Phalcon\Di\InjectionAwareInterface

Исходный код на GitHub

Инкапсулирует информацию о запросе для удобного и безопасного доступа из контроллеров приложения.

Объект запроса — простой объект значений, передаваемый между диспетчером и контроллером классов. Он упаковывает среду HTTP-запроса.

use Phalcon\Http\Request;

$request = new Request();

if ($request->isPost() && $request->isAjax()) {
    echo "Request was made using POST and AJAX";
}

$request->getServer("HTTP_HOST"); // Retrieve SERVER variables
$request->getMethod();            // GET, POST, PUT, DELETE, HEAD, OPTIONS, PATCH, PURGE, TRACE, CONNECT
$request->getLanguages();         // An array of languages the client accepts

Методы

public getHttpMethodParameterOverride ()

...

public setHttpMethodParameterOverride (mixed $httpMethodParameterOverride)

...

public setDI (Phalcon\DiInterface $dependencyInjector)

Устанавливает инжектор зависимостей

public getDI ()

Возвращает внутренний инжектор зависимостей

public get ([mixed $name], [mixed $filters], [mixed $defaultValue], [mixed $notAllowEmpty], [mixed $noRecursive])

Получает переменную из суперглобального массива $_REQUEST, применяя фильтры при необходимости. Если параметры не указаны, возвращается весь массив $_REQUEST.

// Returns value from $_REQUEST["user_email"] without sanitizing
$userEmail = $request->get("user_email");

// Returns value from $_REQUEST["user_email"] with sanitizing
$userEmail = $request->get("user_email", "email");

public getPost ([mixed $name], [mixed $filters], [mixed $defaultValue], [mixed $notAllowEmpty], [mixed $noRecursive])

Получает переменную из суперглобального массива $_POST, применяя фильтры при необходимости. Если параметры не указаны, возвращается весь массив $_POST.

// Returns value from $_POST["user_email"] without sanitizing
$userEmail = $request->getPost("user_email");

// Returns value from $_POST["user_email"] with sanitizing
$userEmail = $request->getPost("user_email", "email");

public getPut ([mixed $name], [mixed $filters], [mixed $defaultValue], [mixed $notAllowEmpty], [mixed $noRecursive])

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

// Returns value from $_PUT["user_email"] without sanitizing
$userEmail = $request->getPut("user_email");

// Returns value from $_PUT["user_email"] with sanitizing
$userEmail = $request->getPut("user_email", "email");

public getQuery ([mixed $name], [mixed $filters], [mixed $defaultValue], [mixed $notAllowEmpty], [mixed $noRecursive])

Получает переменную из суперглобального массива $_GET, применяя фильтры при необходимости. Если параметры не указаны, возвращается весь массив $_GET.

// Returns value from $_GET["id"] without sanitizing
$id = $request->getQuery("id");

// Returns value from $_GET["id"] with sanitizing
$id = $request->getQuery("id", "int");

// Returns value from $_GET["id"] with a default value
$id = $request->getQuery("id", null, 150);

final protected getHelper (array $source, [mixed $name], [mixed $filters], [mixed $defaultValue], [mixed $notAllowEmpty], [mixed $noRecursive])

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

public getServer (mixed $name)

Получает переменную из суперглобального массива $_SERVER.

public has (mixed $name)

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

public hasPost (mixed $name)

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

public hasPut (mixed $name)

Проверяет наличие заданного индекса в данных PUT-запроса.

public hasQuery (mixed $name)

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

final public hasServer (mixed $name)

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

final public getHeader (mixed $header)

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

public getScheme ()

Получает схему HTTP (http/https).

public isAjax ()

Проверяет, был ли запрос выполнен с использованием AJAX.

public isSoap ()

Проверяет, был ли запрос выполнен с использованием SOAP.

public isSoapRequested ()

Псевдоним для isSoap(). Будет устаревшим в будущих версиях.

public isSecure ()

Проверяет, был ли запрос выполнен с использованием защищенного слоя.

public isSecureRequest ()

Псевдоним для isSecure(). Будет устаревшим в будущих версиях.

public getRawBody ()

Получает сырое тело HTTP-запроса.

public getJsonRawBody ([mixed $associative])

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

public getServerAddress ()

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

public getServerName ()

Получает имя активного сервера.

public getHttpHost ()

Получает имя хоста, используемое в запросе. Request::getHttpHost пытается найти имя хоста в следующем порядке: - $_SERVER[“HTTP_HOST”] - $_SERVER[“SERVER_NAME”] - $_SERVER[“SERVER_ADDR”] Дополнительно Request::getHttpHost валидирует и очищает имя хоста. Примечание: валидация и очистка оказывают негативное влияние на производительность, так как используют регулярные выражения.

use Phalcon\Http\Request;

$request = new Request;

$_SERVER["HTTP_HOST"] = "example.com";
$request->getHttpHost(); // example.com

$_SERVER["HTTP_HOST"] = "example.com:8080";
$request->getHttpHost(); // example.com:8080

$request->setStrictHostCheck(true);
$_SERVER["HTTP_HOST"] = "ex=am~ple.com";
$request->getHttpHost(); // UnexpectedValueException

$_SERVER["HTTP_HOST"] = "ExAmPlE.com";
$request->getHttpHost(); // example.com

public setStrictHostCheck ([mixed $flag])

Устанавливает, будет ли метод Request::getHttpHost использовать строгую валидацию имени хоста.

public isStrictHostCheck ()

Проверяет, будет ли метод Request::getHttpHost использовать строгую валидацию имени хоста.

public getPort ()

Получает информацию о порте, на котором сделан запрос.

final public getURI ()

Получает HTTP-URI, по которому был сделан запрос.

public getClientAddress ([mixed $trustForwardedHeader])

Получает наиболее вероятный IP-адрес клиента IPv4. Этот метод ищет в $_SERVER[“REMOTE_ADDR”] и, при необходимости, в $_SERVER[“HTTP_X_FORWARDED_FOR”].

final public getMethod ()

Получает HTTP-метод, который был использован в запросе. Если установлен заголовок X-HTTP-Method-Override, и если метод POST, то он используется для определения «фактического» предназначенного HTTP-метода. Параметр запроса _method также может использоваться для определения HTTP-метода, но только если был вызван setHttpMethodParameterOverride(true). Метод всегда является строкой в верхнем регистре.

public getUserAgent ()

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

public isValidHttpMethod (mixed $method)

Проверяет, является ли метод допустимым HTTP-методом.

public isMethod (mixed $methods, [mixed $strict])

Проверяет, соответствует ли HTTP-метод любому из переданных методов. Когда strict равно true, проверяет, являются ли валидированные методы реальными HTTP-методами.

public isPost ()

Проверяет, является ли HTTP-метод POST. Если _SERVER[“REQUEST_METHOD”]===”POST”.

public isGet ()

Проверяет, является ли HTTP-метод GET. Если _SERVER[“REQUEST_METHOD”]===”GET”.

public isPut ()

Проверяет, является ли HTTP-метод PUT. Если _SERVER[“REQUEST_METHOD”]===”PUT”.

public isPatch ()

Проверяет, является ли HTTP-метод PATCH. Если _SERVER[“REQUEST_METHOD”]===”PATCH”.

public isHead ()

Проверяет, является ли HTTP-метод HEAD. Если _SERVER[“REQUEST_METHOD”]===”HEAD”.

public isDelete ()

Проверяет, является ли HTTP-метод DELETE. Если _SERVER[“REQUEST_METHOD”]===”DELETE”.

public isOptions ()

Проверяет, является ли HTTP-метод OPTIONS. Если _SERVER[“REQUEST_METHOD”]===”OPTIONS”.

public isPurge ()

Проверяет, является ли HTTP-метод PURGE (поддержка Squid и Varnish). Если _SERVER[“REQUEST_METHOD”]===”PURGE”.

public isTrace ()

Проверяет, является ли HTTP-метод TRACE. Если _SERVER[“REQUEST_METHOD”]===”TRACE”.

public isConnect ()

Проверяет, является ли HTTP-метод CONNECT. Если _SERVER[“REQUEST_METHOD”]===”CONNECT”.

public hasFiles ([mixed $onlySuccessful])

Проверяет, включает ли запрос прикрепленные файлы.

final protected hasFileHelper (mixed $data, mixed $onlySuccessful)

Рекурсивно подсчитывает файлы в массиве файлов.

public getUploadedFiles ([mixed $onlySuccessful])

Получает прикрепленные файлы как экземпляры Phalcon\Http\Request\File.

final protected smoothFiles (array $names, array $types, array $tmp_names, array $sizes, array $errors, mixed $prefix)

Улучшает формат $_FILES для получения простого массива со всеми загруженными файлами.

public getHeaders ()

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

$_SERVER = [
    "PHP_AUTH_USER" => "phalcon",
    "PHP_AUTH_PW"   => "secret",
];

$headers = $request->getHeaders();

echo $headers["Authorization"]; // Basic cGhhbGNvbjpzZWNyZXQ=

public getHTTPReferer ()

Получает веб-страницу, которая направила текущий запрос. Например: http://www.google.com

final protected _getBestQuality (array $qualityParts, mixed $name)

Обрабатывает заголовок запроса и возвращает тот, у которого наилучшее качество.

public getContentType ()

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

public getAcceptableContent ()

Получает массив с типами MIME и их качеством, принятыми браузером/клиентом из _SERVER[“HTTP_ACCEPT”].

public getBestAccept ()

Получает лучший тип MIME, принятый браузером/клиентом, из _SERVER[“HTTP_ACCEPT”]

public getClientCharsets ()

Получает массив наборов символов и их качества, принятые браузером/клиентом, из _SERVER[“HTTP_ACCEPT_CHARSET”]

public getBestCharset ()

Получает лучший набор символов, принятый браузером/клиентом, из _SERVER[“HTTP_ACCEPT_CHARSET”]

public getLanguages ()

Получает массив языков и их качества, принятые браузером/клиентом, из _SERVER[“HTTP_ACCEPT_LANGUAGE”]

public getBestLanguage ()

Получает лучший язык, принятый браузером/клиентом, из _SERVER[“HTTP_ACCEPT_LANGUAGE”]

public getBasicAuth ()

Получает информацию об авторизации, принятую браузером/клиентом, из $_SERVER[“PHP_AUTH_USER”]

public getDigestAuth ()

Получает информацию об авторизации, принятую браузером/клиентом, из $_SERVER[“PHP_AUTH_DIGEST”]

final protected _getQualityHeader (mixed $serverIndex, mixed $name)

Обрабатывает заголовок запроса и возвращает массив значений с их качествами

© 2011–2017 Phalcon Framework Team
Licensed under the Creative Commons Attribution License 3.0.
https://docs.phalconphp.com/en/latest/api/Phalcon_Http_Request.html

Spec-Zone.ru

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