Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich in PHP auf Anforderungsheader zugreifen?

Wie kann ich in PHP auf Anforderungsheader zugreifen?

Linda Hamilton
Linda HamiltonOriginal
2024-12-09 09:02:07701Durchsuche

How Can I Access Request Headers in PHP?

Zugriff auf Anforderungsheader in PHP

Das Abrufen bestimmter oder aller Anforderungsheader ist eine häufige Aufgabe in der PHP-Entwicklung. Hier sind die verschiedenen Ansätze, die Sie verwenden können:

Einzel-Header-Abruf (Apache-Modul oder FastCGI)

Wenn Sie nur einen bestimmten Header benötigen, ist dies der effizienteste Weg Greifen Sie direkt darauf zu, indem Sie den HTTP-Headernamen als Schlüssel im Array $_SERVER verwenden. Ersetzen Sie XXXXXX_XXXX durch den Header-Namen in Großbuchstaben (wobei Bindestriche durch Unterstriche ersetzt werden).

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

Abruf aller Header

Apache-Modul oder FastCGI (einfache Methode). )

Die Die Funktion apache_request_headers() bietet Zugriff auf alle Anforderungsheader.

$headers = apache_request_headers();

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

Alle anderen Fälle (Userland-Implementierung)

In Fällen, in denen apache_request_headers() nicht verfügbar ist, können Sie dies tun Verwenden Sie eine benutzerdefinierte Funktion, um Header aus $_SERVER zu extrahieren 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";
}

Zusätzliche Ressourcen:

  • getallheaders() (PHP >= 5.4): Eine Alternative zu apache_request_headers(), die übergreifend funktioniert Plattform.
  • apache_response_headers(): Ruft eine HTTP-Antwort ab headers.
  • headers_list(): Listet Header auf, die in der Antwort gesendet werden sollen.

Das obige ist der detaillierte Inhalt vonWie kann ich in PHP auf Anforderungsheader zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn