suche nach in der

virtual> <apache_setenv
Last updated: Fri, 18 May 2012

view this page in

getallheaders

(PHP 4, PHP 5)

getallheadersLiefert alle HTTP-Request-Header

Beschreibung

array getallheaders ( void )

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.

Rückgabewerte

Ein assoziatives Array aller HTTP-Header der aktuellen Anfrage; im Fehlerfall wird FALSE zurückgegeben.

Changelog

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.

Beispiele

Beispiel #1 getallheaders()-Beispiel

<?php

foreach (getallheaders() as $name => $value) {
    echo 
"$name$value\n";
}

?>

Anmerkungen

Ab PHP 4.3.3 können Sie diese Funktion auch mit dem NSAPI-Server-Modul für Netscape/iPlanet/SunONE-Webserver nutzen.

Siehe auch



add a note add a note User Contributed Notes
getallheaders
tigr at mail15 dot com
19-May-2006 01:08
And even better one, that absolutely mimics getallheaders behaviour (including keynames - first character in each word is uppercase and words separated with '-' instead of underscore), and still does not use regexp:
<?php
function emu_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;
}
?>
tigr at mail15 dot com
19-May-2006 12:44
Just a bit faster version of ZevS' function (does not use regular expressions and does not require POSIX regexps that is in PECL in php6):
<?php
function emu_getallheaders() {
   foreach(
$_SERVER as $name => $value)
       if(
substr($name, 0, 5) == 'HTTP_')
          
$headers[substr($name, 5)] = $value;
   return
$headers;
}
?>
lorro at lorro dot hu
19-Apr-2005 03:25
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.
ZevS
17-Apr-2005 10:24
if PHP installed not as Apache-module:

<?php
function emu_getallheaders() {
    foreach(
$_SERVER as $h=>$v)
        if(
ereg('HTTP_(.+)',$h,$hp))
           
$headers[$hp[1]]=$v;
    return
$headers;
}
?>

I put this code to file "/var/www/include", and edit php.ini:
auto_prepend_file = "/var/www/include"
jukkaho at mail dot student dot oulu dot fi
17-Jan-2003 11:14
This function really is useful. Although $_SERVER['HTTP_*']-variables seem to include all request headers, they are really only the most generally needed - not all of them.

One example that needs this functionality is Digest Authentication (http://www.ietf.org/rfc/rfc2617.txt). When implementing it in PHP script, you can't read client's "Authorization"-header without this function.
jarl at diku dot dk
25-Mar-2000 12:15
All the environment variables can be found here:
http://www.php.net/manual/language.variables.predefined.php

virtual> <apache_setenv
Last updated: Fri, 18 May 2012