
Yaf_Request_Http::isXmlHttpRequest 함수는 XMLHttpRequest 인지 아닌지를 확인하는 데 사용됩니다. 이 함수는 다음 조건에 의해 true를 반환합니다.
- HTTP 요청의 'X-Requested-With' 헤더 값이 'XMLHttpRequest' 인 경우
- HTTP 요청의 'X-HTTP-Method-Override' 헤더 값이 'XMLHttpRequest' 인 경우
- HTTP 요청의 'X-Requested-With' 헤더가 없고, HTTP 요청의 'X-HTTP-Method-Override' 헤더가 없고, HTTP 요청의 'Content-Type' 헤더가 'application/json' 인 경우
사용 예시를 통해 설명해드리겠습니다.
#hostingforum.kr
php
$request = new Yaf_Request_Http();
$request->setHeader('X-Requested-With', 'XMLHttpRequest');
echo Yaf_Request_Http::isXmlHttpRequest($request) ? 'true' : 'false'; // true
$request->setHeader('X-Requested-With', '');
$request->setHeader('X-HTTP-Method-Override', 'XMLHttpRequest');
echo Yaf_Request_Http::isXmlHttpRequest($request) ? 'true' : 'false'; // true
$request->setHeader('X-Requested-With', '');
$request->setHeader('X-HTTP-Method-Override', '');
$request->setHeader('Content-Type', 'application/json');
echo Yaf_Request_Http::isXmlHttpRequest($request) ? 'true' : 'false'; // true
이 예시에서, 첫 번째 예시는 'X-Requested-With' 헤더가 'XMLHttpRequest' 인 경우에 true를 반환합니다. 두 번째 예시는 'X-HTTP-Method-Override' 헤더가 'XMLHttpRequest' 인 경우에 true를 반환합니다. 세 번째 예시는 'X-Requested-With' 헤더가 없고, 'X-HTTP-Method-Override' 헤더가 없고, 'Content-Type' 헤더가 'application/json' 인 경우에 true를 반환합니다.
2025-07-13 09:00