apache_request_headers()はすべての HTTP リクエストヘッダを取得する関数であるが、CGI版のPHPの場合はこの関数が使えない。
CGI版のPHPでapache_request_headers()関数を使いたいときのために次の代替が用意されている。
<?php
if (!function_exists('apache_request_headers')) {
eval('
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;
}
}
return $out;
}
');
}
?>
この後で、$headers = apache_request_headers();を実行すればリクエストヘッダを得ることができる。