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


Posted in PHP onDecember 16, 2012

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

<?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 
)
PHP 相关文章推荐
模仿OSO的论坛(四)
Oct 09 PHP
给php新手谈谈我的学习心得
Feb 25 PHP
Admin generator, filters and I18n
Oct 06 PHP
简单的php缓存类分享     php缓存机制
Jan 22 PHP
ThinkPHP实现多数据库连接的解决方法
Jul 01 PHP
codeigniter中实现一次性加载多个view的方法
Mar 20 PHP
php实现对两个数组进行减法操作的方法
Apr 17 PHP
Yii输入正确验证码却验证失败的解决方法
Jun 06 PHP
PHP使用ActiveMQ实例
Feb 05 PHP
php中输出json对象的值(实现方法)
Mar 07 PHP
PHP开发的文字水印,缩略图,图片水印实现类与用法示例
Apr 12 PHP
PHP生成zip压缩包的常用方法示例
Aug 22 PHP
php获取通过http协议post提交过来xml数据及解析xml
Dec 16 #PHP
mysql 查询指定日期时间内sql语句实现原理与代码
Dec 16 #PHP
非常精妙的PHP递归调用与静态变量使用
Dec 16 #PHP
PHP--用万网的接口实现域名查询功能
Dec 13 #PHP
phpexcel导出excel的颜色和网页中的颜色显示不一致
Dec 11 #PHP
PHP5.3的垃圾回收机制(动态存储分配方案)深入理解
Dec 10 #PHP
PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
Dec 07 #PHP
You might like
php图片的裁剪与缩放生成符合需求的缩略图
2013/01/11 PHP
百度地图API应用之获取用户的具体位置
2014/06/10 PHP
destoon首页调用求购供应信息的地区名称的方法
2014/08/21 PHP
PHP7新特性foreach 修改示例介绍
2016/08/26 PHP
php事务回滚简单实现方法示例
2017/03/28 PHP
JQuery优缺点分析说明
2011/04/10 Javascript
javascript中的绑定与解绑函数应用示例
2013/06/24 Javascript
jquery如何扑捉回车键触发的事件
2014/04/24 Javascript
JS动态加载当前时间的方法
2015/02/09 Javascript
JS HTML5拖拽上传图片预览
2016/07/18 Javascript
js倒计时小实例(多次定时)
2016/12/08 Javascript
解决Extjs下拉框不显示的问题
2017/06/21 Javascript
js实现登录注册框手机号和验证码校验(前端部分)
2017/09/28 Javascript
vuejs点击class变化的实例
2018/09/05 Javascript
JavaScript设计模式--简单工厂模式定义与应用案例详解
2020/05/23 Javascript
vue 组件间的通信之子组件向父组件传值的方式
2020/07/29 Javascript
关于JavaScript数组去重的一些理解汇总
2020/09/10 Javascript
各个系统下的Python解释器相关安装方法
2015/10/12 Python
python生成验证码图片代码分享
2016/01/28 Python
python判断字符串编码的简单实现方法(使用chardet)
2016/07/01 Python
一篇文章读懂Python赋值与拷贝
2018/04/19 Python
python2和python3的输入和输出区别介绍
2018/11/20 Python
python实现多进程通信实例分析
2019/09/01 Python
Python下利用BeautifulSoup解析HTML的实现
2020/01/17 Python
python实现猜拳游戏
2020/03/04 Python
pycharm远程连接vagrant虚拟机中mariadb数据库
2020/06/05 Python
iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配
2020/04/08 HTML / CSS
简述使用ftp进行文件传输时的两种登录方式?它们的区别是什么?常用的ftp文件传输命令是什么?
2016/11/20 面试题
linux面试题参考答案(7)
2014/07/24 面试题
环境科学专业个人求职信
2013/12/15 职场文书
优秀求职信范文分享
2013/12/19 职场文书
物业招聘计划书
2014/01/10 职场文书
取保候审保证书
2014/04/30 职场文书
五一劳动节活动总结
2015/02/09 职场文书
2014年底个人工作总结
2015/03/10 职场文书
关于社会实践的心得体会(2016最新版)
2016/01/25 职场文书