0
点赞
收藏
分享

微信扫一扫

PHP获取http头信息


获取http请求的头信息。

PHP手册提供了现成的函数:

 

getallheaders

 

(PHP 4, PHP 5)

getallheaders — Fetch all HTTP request headers



说明


array  getallheaders (  void

Fetches all HTTP headers from the current request.

This function is an alias for ​​apache_request_headers()​​​. Please read the​​apache_request_headers()​​


返回值

An associative array of all the HTTP headers in the current request, orFALSE on failure. 

Example #1 getallheaders()

<?php  

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

?>

 不过这个函数只能在apache环境下使用,iis或者nginx并不支持,可以通过自定义函数实现

<?php   
<span class="html">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;
}
}</span>
?>

 好了,看看都打印出了啥吧

<?php  
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
)

举报

相关推荐

0 条评论