- Главная
- Сниппеты Битрикс d7
HttpRequest - замена $_REQUEST, $_POST и др.
Ноябрь 5, 2017
Теги:
Основное
Класс \Bitrix\Main\HttpRequest (наследник Request) позволяет работать с данными, отправляемыми на сервер, настройками сервера и др.
Получение объекта:
$request = \Bitrix\Main\Application::getInstance()->getContext()->getRequest();
Возвращает значение переменной запроса: (аналог переменной из $_REQUEST):
Возвращает значение переменной запроса POST: (аналог переменной из $_POST):
$request->getPost('name')
Возвращает значение переменной запроса GET (аналог переменно из $_GET):
$request->getQuery('name')
Возвращает отправленный файл (аналог переменной из $_FILES):
$request->getFile('name')
Возвращает значение cookie (аналог переменной из $_COOKIE):
$request->getCookie('name')
// или
$request->getCookieRaw('name')
Возвращает список переменных запроса POST (аналог $_POST):
Взять входные данные POST в формате JSON и разобрать их в массив:
if($request->isJson()) // проверяет $contentType === 'application/json'
$request->decodeJson();
Получить json в виде массива:
Получить данные json первого уровня с ключом "key":
$request->getJsonList()->get('key')
Возвращает список переменных запроса GET (аналог $_GET):
Возвращает список отправленных файлов (аналог $_FILES):
Возвращает массив значений cookie (аналог $_COOKIE):
$request->getCookieList()
// или
$request->getCookieRawList()
Возвращает массив названий переменных системных параметров в битрикс (например, "login", "logout" и т.д.):
$request->getSystemParameters()
Изменяет значение переменных запроса на основе строки параметров:
$request->modifyByQueryString('name1=value1&name2=value2');
Возвращает способ отправки данных ("GET", "POST" и т.д.):
$request->getRequestMethod()
Проверяет, были ли данные отправлены методом POST:
Возвращает текущую страницу (аналог $APPLICATION->GetCurPageParam()):
$request->getRequestUri()
Возвращает текущую страницу с параметрами (аналог $APPLICATION->GetCurPageParam(), но возвращает index.php, если он явно указан):
\Bitrix\Main\Context::getCurrent()->getServer()->getRequestUri()
Возвращает текущую страницу с переводом пути в текущую кодировку:
$request->getDecodedUri()
Возвращает текущую страницу без параметров (аналог $APPLICATION->GetCurPage(), но всегда возвращает index.php!!):
$request->getRequestedPage()
Возвращает папку текущей страницы (аналог $APPLICATION->GetCurDir()):
$request->getRequestedPageDirectory()
Возвращает переменной REMOTE_ADDR сервера (аналог $_SERVER["REMOTE_ADDR"]):
$request->getRemoteAddress()
Возвращает переменной HTTP_USER_AGENT сервера (аналог $_SERVER["HTTP_USER_AGENT"]):
Возвращает список доступных языков из переменной HTTP_ACCEPT_LANGUAGE сервера в виде массива:
$request->getAcceptedLanguages()
Возвращает текущий хост (аналог $_SERVER["HTTP_HOST"]):
Проверяет, были ли данные отправлены по безопасному протоколу https:
Проверяет, была ли страница запрошена методом аякс:
$request->isAjaxRequest()
Проверяет, является ли текущая страница страницей административного раздела:
$request->isAdminSection()
← Переход к списку