微信开发中之前常用到$GLOBALS['HTTP_RAW_POST_DATA'] ,但升级后这个参数不见了,导致了一系列错误,

可以用 file_get_contents('php://input')来代替

php://input、$_POST与$GLOBALS['HTTP_RAW_POST_DATA']三者的区别

$_POST

只有Coentent-Type的值为application/x-www.form-urlencoded和multipart/form-data两种类型时,$_POST才能获取到数据。

$GLOBALS['HTTP_RAW_POST_DATA']

如果php无法识别Coentent-Type类型,也就无法获取请求数据,这个时候,可以用$GLOBALS['HTTP_RAW_POST_DATA']来获取。

php://input

1. 从使用结果看,php://input与$GLOBALS['HTTP_RAW_POST_DATA']的功能是一样的,但是,php://input需要的内存比较小,并且它不受 php.ini 配置文件的限制。
2. 如果Coentent-Type的类型为multipart/form-data,使用php://input和$GLOBALS['HTTP_RAW_POST_DATA']是获取不到数据的,除此之外,php://input都能获取到数据。
3. 仅当Coentent-Type的类型为application/x-www.form-urlencoded时,使用php://input和$_POST获取到的数据才是一致的。
4. 使用方式:使用file_get_contents('php://input')获取请求数据。

最新文章

  1. 企业IT管理员IE11升级指南【6】—— Internet Explorer 11面向IT专业人员的常见问题
  2. mouseover、mouseout,mouseenter、mouseleave区别
  3. 虚拟机安装Ubuntu到U盘
  4. [转]http://makefiletutorial.com/
  5. linux设备驱动归纳总结(九):1.platform总线的设备和驱动【转】
  6. eMarketer:DMP帮广告主搞定大数据处理问题
  7. MapSearch 阅读随笔
  8. HeadFirst设计模式
  9. python 验证码
  10. Android学习笔记__1__Android体系架构
  11. hdu 1575 Tr A(矩阵快速幂乘法优化算法)
  12. 使用shell脚本自定义实现选择登录ssh
  13. setinIerval和setTimeout的区别?
  14. pandas常用函数之shift
  15. vue + BMap实现常用地图
  16. linux利用CMakeLists编译cuda程序
  17. CSS3-loading动画
  18. linux链接库的理解
  19. Maven Gradle 区别
  20. 【SAP BI】BW如何连接SQLSERVER数据库

热门文章

  1. JavaScript学习06(操作BOM和表单)
  2. VRRP协议原理与配置
  3. Python - typing 模块 —— NewType
  4. STM32—SPI读写FLASH
  5. SpringBoot整合ActiveMq实现Queue和Topic两种模式(看不懂你来打我)
  6. C# 中的异步问题 Task
  7. 十:JavaWeb中的监听器(一)
  8. 关于int和Integer缓存(二):修改缓存大小
  9. MongoDB学习笔记三 - MongooseAPI操作数据
  10. netty系列之:轻轻松松搭个支持中文的服务器