(PHP 4, PHP 5)
getallheaders — Liefert alle HTTP-Request-Header
Liefert alle HTTP-Header des aktuellen Requests.
Diese Funktion ist ein Alias für apache_request_headers(). Bitte lesen Sie die Dokumentation zu apache_request_headers(), wenn Sie mehr Informationen darüber benötigen, wie die Funktion arbeitet.
Diese Funktion wird nur unterstützt, wenn PHP als Apache-Modul installiert wurde.
Ein assoziatives Array aller HTTP-Header der aktuellen Anfrage; im Fehlerfall wird FALSE zurückgegeben.
Version | Beschreibung |
---|---|
4.3.0 | Die Funktion wurde zum Alias für apache_request_headers(). Genaugenommen wurde sie umbenannt. Dies wurde notwendig, weil die Funktion nur mit Apache funktioniert. |
Beispiel #1 getallheaders()-Beispiel
<?php
foreach (getallheaders() as $name => $value) {
echo "$name: $value\n";
}
?>
Hinweis:
Ab PHP 4.3.3 können Sie diese Funktion auch mit dem NSAPI-Server-Modul für Netscape/iPlanet/SunONE-Webserver nutzen.
apache_request_headers replicement for nginx
<?php
if (!function_exists('apache_request_headers')) {
function apache_request_headers() {
foreach($_SERVER as $key=>$value) {
if (substr($key,0,5)=="HTTP_") {
$key=str_replace(" ","-",ucwords(strtolower(str_replace("_"," ",substr($key,5)))));
$out[$key]=$value;
}else{
$out[$key]=$value;
}
}
return $out;
}
}
?>
it could be useful if you using nginx instead of apache
if (!function_exists('getallheaders'))
{
function getallheaders()
{
foreach ($_SERVER as $name => $value)
{
if (substr($name, 0, 5) == 'HTTP_')
{
$headers[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 5)))))] = $value;
}
}
return $headers;
}
}
Beware that RFC2616 (HTTP/1.1) defines header fields as case-insensitive entities. Therefore, array keys of getallheaders() should be converted first to lower- or uppercase and processed such.