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;
}
}
getallheaders
(PHP 4, PHP 5)
getallheaders — 全てのHTTPリクエストヘッダを取得する
説明
array getallheaders
( void
)
すべての HTTP ヘッダを現在のリクエストから取得します。
この関数は、 apache_request_headers()のエイリアスです。 この関数は、カレントのリクエストにおける全てのHTTPヘッダーを有する 連想配列を返します。この関数の動作に関する詳細については、 apache_request_headers()のドキュメントを参照して ください。
この関数は、 PHP が apache モジュールとしてインストールされた場合のみサポートされます。
返り値
全てのHTTPリクエストヘッダの連想配列、もしくは失敗時に FALSE を返します。
変更履歴
| バージョン | 説明 |
|---|---|
| 4.3.0 | apache_request_headers()のエイリアスとなりました。 これは、基本的に関数名の変更にあたります。この関数は、 Apache モジュールの場合のみ動作します。 |
例
例1 getallheadres() の例
<?php
foreach (getallheaders() as $name => $value) {
echo "$name: $value\n";
}
?>
注意
注意: PHP 4.3.3 以降、 Netscape/iPlanet/SunONE Web サーバの NSAPI サーバモジュール でもこの関数を使用できます。
getallheaders
joyview at gmail dot com
07-Jul-2008 12:52
07-Jul-2008 12:52
lorro at lorro dot hu
19-Apr-2005 10:25
19-Apr-2005 10: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.
