Как обнаружить AJAX запрос в PHP
Сниппет
Во-первых, нет надежного способа узнать, что запрос был сделан через Ajax. Никогда не следует доверять данным, исходящим от клиента.
Но вы можете использовать хедеры для обнаружения AJAX запросов. Заголовок HTTP_X_REQUESTED_WITH
отправляется всеми последними браузерами, поддерживающими запросы AJAX.
if ( !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest' )
{
// это ajax запрос, тут ваш код
}
Начиная с PHP 7, с нулевым оператором объединения - код будет короче:
$isAjax = 'xmlhttprequest' == strtolower( $_SERVER['HTTP_X_REQUESTED_WITH'] ?? '' );
Похожие снипеты
- Извлечь все битовые флаги
- Валидация XML
- Как проверить подключение к MySQL
- Проверка, все ли значения в массиве равны
- Проверка равенства двух массивов
- Валидация URL
- In_array без учета регистра
- Валидация Email
- Проверить, начинается ли строка с определенных символов
- Проверить, установлен ли битовый флаг