Як виявити AJAX запит у PHP

Сніппет

По-перше, немає надійного способу дізнатися, що запит було зроблено через Ajax. Ніколи не слід довіряти даними, які походять від клієнта.

Але ви можете використовувати хедер для виявлення AJAX запитів. Заголовок HTTP_X_REQUESTED_WITH надсилається всіма останніми браузерами, які підтримують запити AJAX.

downloadcopy
if ( !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest' )
{
       // це ajax запит, тут ваш код
}

Починаючи з PHP 7, з нульовим оператором об'єднання - код буде коротшим:

downloadcopy
$isAjax = 'xmlhttprequest' == strtolower( $_SERVER['HTTP_X_REQUESTED_WITH'] ?? '' );