>백엔드 개발 >PHP 튜토리얼 >PHP에서 요청 헤더에 어떻게 액세스할 수 있나요?

PHP에서 요청 헤더에 어떻게 액세스할 수 있나요?

Linda Hamilton
Linda Hamilton원래의
2024-12-09 09:02:07700검색

How Can I Access Request Headers in PHP?

PHP에서 요청 헤더에 액세스

특정 또는 모든 요청 헤더를 검색하는 것은 PHP 개발에서 일반적인 작업입니다. 사용할 수 있는 다양한 접근 방식은 다음과 같습니다.

단일 헤더 검색(Apache 모듈 또는 FastCGI)

특정 헤더만 필요한 경우 가장 효율적인 방법은 다음을 수행하는 것입니다. $_SERVER 배열의 키로 HTTP 헤더 이름을 사용하여 직접 액세스합니다. XXXXXX_XXXX를 대문자 헤더 이름으로 바꿉니다(하이픈은 밑줄로 바꿈).

// Retrieve the "X-Requested-With" header value
$headerValue = $_SERVER['HTTP_X_REQUESTED_WITH'];

모든 헤더 검색

Apache 모듈 또는 FastCGI(간단한 방법) )

apache_request_headers() 함수는 모든 요청 헤더에 대한 액세스를 제공합니다.

$headers = apache_request_headers();

foreach ($headers as $header => $value) {
    echo "$header: $value <br />\n";
}

기타 모든 경우(사용자 영역 구현)

apache_request_headers()를 사용할 수 없는 경우 다음을 수행할 수 있습니다. 사용자 정의 함수를 사용하여 $_SERVER에서 헤더를 추출합니다. array.

function getRequestHeaders() {
    $headers = array();
    foreach ($_SERVER as $key => $value) {
        if (substr($key, 0, 5) != 'HTTP_') {
            continue;
        }
        $header = str_replace(' ', '-', ucwords(str_replace('_', ' ', strtolower(substr($key, 5)))));
        $headers[$header] = $value;
    }
    return $headers;
}

$headers = getRequestHeaders();

foreach ($headers as $header => $value) {
    echo "$header: $value <br />\n";
}

추가 리소스:

  • getallheaders() (PHP >= 5.4): 작동하는 apache_request_headers()의 대안 cross-platform.
  • apache_response_headers(): HTTP 응답 헤더를 검색합니다.
  • headers_list(): 응답으로 보낼 헤더를 나열합니다.

위 내용은 PHP에서 요청 헤더에 어떻게 액세스할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.