研究一晚上php关于自定义header头信息的问题。看了很多代码,但是由于本人才疏学浅。连测试demo都没跑通。实在是惭愧。这里看到个获取header信息的方法,挺不错的,记录一下。

我们可以在$_SERVER中获取header数据,自定义的数据都是使用HTTP_作为前缀的,所以可以把HTTP_前缀的数据读出。

public function get_all_header(){// 忽略获取的header数据。这个函数后面会用到。主要是起过滤作用$ignore = array('host','accept','content-length','content-type');$headers = array();//这里大家有兴趣的话,可以打印一下。会出来很多的header头信息。咱们想要的部分,都是‘http_'开头的。所以下面会进行过滤输出。
/*    var_dump($_SERVER);exit;*/foreach($_SERVER as $key=>$value){if(substr($key, 0, 5)==='HTTP_'){//这里取到的都是'http_'开头的数据。//前去开头的前5位$key = substr($key, 5);//把$key中的'_'下划线都替换为空字符串$key = str_replace('_', ' ', $key);//再把$key中的空字符串替换成‘-’$key = str_replace(' ', '-', $key);//把$key中的所有字符转换为小写$key = strtolower($key);//这里主要是过滤上面写的$ignore数组中的数据if(!in_array($key, $ignore)){$headers[$key] = $value;}}}
//输出获取到的headerreturn $headers;}

越学习越发现自己到底有多菜。加油。各位圣诞节快乐!

参考链接:http://blog.csdn.net/fdipzone/article/details/49518535

用php获取header头信息相关推荐

  1. 获取头信息header中参数access_token失败,获取header头信息中带下划线参数失败

    今天获取header头信息中参数access_token返回为null,本地用postman测试没问题,发布到线上环境就出问题了.         后面发现是nginx代理的过程中参数被过滤了,ngi ...

  2. php 获取header头信息并显示网址,php 获取远程网址header头信息的方法

    一个用PHP获取远程网址header头信息的方法,这在采集时很有用,他可以让你判断出来,远程文件或网页是否正常,是否是404页 有二种方法, 1.用php的函数get_headers get_head ...

  3. 头信息_如何在 Spring REST Controller 中获取 HTTP 头信息

    介绍 在本篇文章中,我们将研究如何在 Spring Rest Controller 中访问 HTTP 头信息. 首先,我们将使用 @RequestHeader 注解分别或同时读取 HTTP 头信息. ...

  4. Django request.META.get()获取header头

    Django request.META.get()获取header头 在使用Django过程中需要开发一些API给其他系统使用,为了安全把一些信息放在header头中. 如果header 的key为a ...

  5. php获取location,php获取header[‘location’]信息常见问题

    15/01/31 本文关键字: 302, header, location //初始化url信息 $host= "#8221;; $url=$host."l/rzTf7ap2viw ...

  6. curl 增加header_Curl发送header头信息

    有些接口用CURL调用的时候,要发送header头信息 如百度的查询快递的接口 PHP代码如下:$url = "https://sp0.baidu.com/9_Q4sjW91Qh3otqbp ...

  7. java ajax 获取headers_Ajax获取Response头信息

    $.ajax({ type: 'HEAD', // 获取头信息,type=HEAD即可 url : window.location.href, complete: function( xhr,data ...

  8. request-promise 获取返回头信息_http返回的状态码 大全

    00 Continue 继续.客户端应继续其请求101 Switching Protocols 切换协议.服务器根据客户端的请求切换协议.只能切换到更高级的协议,例如,切换到HTTP的新版本协议200 ...

  9. 通过severlet获取请求头信息

    为什么80%的码农都做不了架构师?>>>    Accept-Charset:浏览器可接受的字符集. Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip. ...

最新文章

  1. 奇数页分节符什么意思_删除分节符问题
  2. springboot 自动装配_Spring Boot 自动装配流程
  3. weka: exhaustive search
  4. [网摘]关于产品运营
  5. 接口自动化测试之PHPUnit-框架代码编写2
  6. 网站总结 和 相关控件 总结
  7. C++学习之路 | PTA乙级—— 1025 反转链表 (20分)(精简)
  8. 沉淀再出发:关于java中的AQS理解
  9. CVE-2021-22205——Gitlab 远程命令执行漏洞复现
  10. python学习Day4 流程控制(if分支,while循环,for循环)
  11. Android判断App是否在前台运行
  12. 【路径规划】基于matalb遗传算法机器人栅格地图避障路径规划【含Matlab源码 027期】
  13. 英国云主机节点是欧美五大节点之一
  14. 盘点:2022年10款比较火的项目管理软件
  15. 工资短信生成器如何使用
  16. 华为云虚拟服务器怎么搭建,云服务器怎么搭建虚拟主机
  17. 不在 sudoers 文件中。此事将被报告。
  18. Web应用防火墙是什么?有哪些功能?
  19. 疫情下的远程办公,充满了崩溃与机遇
  20. 安卓开发: Jetpack compose + kotlin 实现 俄罗斯方块游戏

热门文章

  1. Minimum supported Gradle version is 6.1.1
  2. cudnn.benchmark
  3. “{”: 未找到匹配令牌
  4. multi-target not supporte
  5. 未加载 ntdll.pdb的可能错误原因
  6. python右下角弹出消息
  7. Redis requires a monkey patched socket library to work with gevent
  8. python 路径双斜杠问题
  9. pytorch学习笔记(二):gradien
  10. python caffe报错:No module named google