Heim >php教程 >php手册 >php 获取http头:PHP获取http头信息

php 获取http头:PHP获取http头信息

WBOY
WBOYOriginal
2016-06-21 08:50:031428Durchsuche

获取http请求的头信息。
PHP手册提供了现成的函数:
getallheaders
(PHP 4, PHP 5)
getallheaders—Fetch all HTTP request headers
说明
arraygetallheaders(void)
Fetches all HTTP headers from the current request.
This function is an alias forapache_request_headers(). Please read theapache_request_headers()documentation for more information on how this function works.
返回值
An associative array of all the HTTP headers in the current request, orFALSEon failure.
Example #1getallheaders()example
foreach (getallheaders() as $name => $value) {
echo "$name: $value\n";
}
?>
不过这个函数只能在apache环境下使用,iis或者nginx并不支持,可以通过自定义函数实现
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;
}
}

?>
好了,看看都打印出了啥吧
print_r(getallheaders());
获得结果
Array
(
[Accept] => */*
[Accept-Language] => zh-cn
[Accept-Encoding] => gzip, deflate
[User-Agent] => Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727)
[Host] => localhost
[Connection] => Keep-Alive
) 本文链接http://www.cxybl.com/html/wlbc/Php/20130326/37406.html



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