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 相关文章推荐
php unset全局变量运用问题的深入解析
Jun 17 PHP
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
Jul 05 PHP
php实现水仙花数的4个示例分享
Apr 08 PHP
WIN8.1下搭建PHP5.6环境
Apr 29 PHP
php基于Fleaphp框架实现cvs数据导入MySQL的方法
Feb 23 PHP
yii2 页面底部加载css和js的技巧
Apr 21 PHP
利用php输出不同的心形图案
Apr 22 PHP
php检测mysql表是否存在的方法小结
Jul 20 PHP
Yii框架 session 数据库存储操作方法示例
Nov 18 PHP
PHP Beanstalkd消息队列的安装与使用方法实例详解
Feb 21 PHP
PHP设计模式入门之迭代器模式原理与实现方法分析
Apr 26 PHP
PHP tp5中使用原生sql查询代码实例
Oct 28 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新手上路(十一)
2006/10/09 PHP
介绍几个array库的新函数 php
2006/12/29 PHP
解析php二分法查找数组是否包含某一元素
2013/05/23 PHP
ThinkPHP3.1新特性之动态设置自动完成及自动验证示例代码
2014/06/23 PHP
php实现使用正则将文本中的网址转换成链接标签
2014/12/03 PHP
Yii2创建多界面主题(Theme)的方法
2016/10/08 PHP
用JQuery实现全选与取消的两种简单方法
2014/02/22 Javascript
javascript解决IE6下hover问题的方法
2015/07/28 Javascript
jquery简单实现带渐显效果的选项卡菜单代码
2015/09/01 Javascript
跟我学习JScript的Bug与内存管理
2015/11/18 Javascript
javascript实现查找数组中最大值方法汇总
2016/02/13 Javascript
JavaScript简单下拉菜单特效
2016/09/13 Javascript
jQuery实现导航栏头部菜单项点击后变换颜色的方法
2017/07/19 jQuery
详解webpack3如何正确引用并使用jQuery库
2017/08/26 jQuery
深入理解ES7的async/await的用法
2017/09/09 Javascript
vue 过滤器filter实例详解
2018/03/14 Javascript
Vue+Webpack完美整合富文本编辑器TinyMce的方法
2018/11/30 Javascript
VUE安装使用教程详解
2019/06/03 Javascript
在Python中使用CasperJS获取JS渲染生成的HTML内容的教程
2015/04/09 Python
Python之ReportLab绘制条形码和二维码的实例
2018/01/15 Python
人脸识别经典算法一 特征脸方法(Eigenface)
2018/03/13 Python
python实现socket+threading处理多连接的方法
2019/07/23 Python
Django 静态文件配置过程详解
2019/07/23 Python
python实现操作文件(文件夹)
2019/10/31 Python
python实现ftp文件传输功能
2020/03/20 Python
Python自动重新加载模块详解(autoreload module)
2020/04/01 Python
python 利用toapi库自动生成api
2020/10/19 Python
python opencv图像处理(素描、怀旧、光照、流年、滤镜 原理及实现)
2020/12/10 Python
世界著名的顶级牛排:Omaha Steak(奥马哈牛排)
2016/09/20 全球购物
Bonami斯洛伐克:购买家具和家居饰品
2019/07/02 全球购物
sleep()方法和wait()方法的区别是什么
2012/11/17 面试题
大学运动会通讯稿
2014/01/28 职场文书
公司市场专员岗位职责
2014/06/29 职场文书
党的群众路线教育实践活动个人整改措施材料
2014/11/04 职场文书
沈阳故宫导游词
2015/01/31 职场文书
蓝天保卫战收官在即 :15行业将开展环保分级评价
2019/07/19 职场文书