找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 445|回复: 0
打印 上一主题 下一主题

PHP获取http请求的头信息实现步骤

[复制链接]

3444

主题

3465

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
11142
跳转到指定楼层
楼主
发表于 2018-2-14 08:26:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            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 theapache_request_headers() documentation for more information on how this function works.
返回值
An associative array of all the HTTP headers in the current request, orFALSE on failure.
Example #1 getallheaders() example
[U]复制代码[/U] 代码如下:
$value) {
echo "$name: $value\n";
}
?>

不过这个函数只能在apache环境下使用,iis或者nginx并不支持,可以通过自定义函数实现
[U]复制代码[/U] 代码如下:
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;
    }
}
?>

好了,看看都打印出了啥吧
[U]复制代码[/U] 代码如下:

获得结果:
[U]复制代码[/U] 代码如下:
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
)
            
            
您可能感兴趣的文章:
  • php模拟asp中的XmlHttpRequest实现http请求的代码
  • PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
  • 使用php的HTTP请求的库Requests实现美女图片墙
  • php 利用socket发送HTTP请求(GET,POST)
  • PHP使用socket发送HTTP请求的方法
  • php实现的http请求封装示例
  • PHP模拟http请求的方法详解
  • 浅谈PHP发送HTTP请求的几种方式
  • PHP实现模拟http请求的方法分析
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端