php获取POST数据的三种方法实例详解


Posted in PHP onDecember 20, 2016

php获取POST数据的三种方法

方法一,$_POST

$_POST或$_REQUEST存放的是PHP以key=>value的形式格式化以后的数据。

方法二,使用file_get_contents(“php://input”)

对于未指定 Content-Type 的POST数据,则可以使用file_get_contents(“php://input”);来获取原始数据。 事实上,用PHP接收POST的任何数据均使用本方法。而不用考虑Content-Type,包括二进制文件流也是可行的。

同$HTTP_RAW_POST_DATA比起来,它给内存带来的压力较小,并且不需要任何特殊的 php.ini 设置。

php://input无法读取Content-Type为multipart/form-data的POST数据,需要设置php.ini中的always_populate_raw_post_data值为On才可以。

php://input读取不到$_GET数据。是因为$_GET数据作为query_path写在http请求头部(header)的PATH字段,而不是写在http请求的body部分。

方法三,使用全局变量$GLOBALS[‘HTTP_RAW_POST_DATA']

在$GLOBALS[‘HTTP_RAW_POST_DATA']存放的是POST过来的原始数据。

但$GLOBALS[‘HTTP_RAW_POST_DATA']中是否保存POST过来的数据取决于centent-Type的设置,只有在PHP在无法识别的Content-Type的情况下,才会将POST过来的数据原样地填入变量$GLOBALS[‘HTTP_RAW_POST_DATA']中,象Content-Type=application/x-www-form-urlencoded时,该变量是空的。

另外,它同样无法读取Content-Type为multipart/form-data的POST数据,也需要设置php.ini中always_populate_raw_post_data值为On,PHP才会总把POST数据填入变量$http_raw_post_data。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
PHP5/ZendEngine2的改进
Oct 09 PHP
在任意字符集下正常显示网页的方法一
Apr 01 PHP
php 用sock技术发送邮件的函数
Jul 21 PHP
php session 错误
May 21 PHP
php数据库抽象层 PDO
May 07 PHP
php学习笔记 数组的常用函数
Jun 13 PHP
让PHP更快的提供文件下载的代码
Jun 13 PHP
简单介绍PHP的责任链编程模式
Aug 11 PHP
两种php实现图片上传的方法
Jan 22 PHP
PHP使用mysql与mysqli连接Mysql数据库用法示例
Jul 07 PHP
PHP二维数组去重算法
Dec 17 PHP
微信公众平台开发教程①获取用户Openid及个人信息图文详解
Apr 10 PHP
Centos 6.5系统下编译安装PHP 7.0.13的方法
Dec 19 #PHP
Discuz论坛密码与密保加密规则
Dec 19 #PHP
yii框架搜索分页modle写法
Dec 19 #PHP
YII框架中搜索分页jQuery写法详解
Dec 19 #PHP
Yii2――使用数据库操作汇总(增删查改、事务)
Dec 19 #PHP
利用PHP抓取百度阅读的方法示例
Dec 18 #PHP
详解PHP数据压缩、加解密(pack, unpack)
Dec 17 #PHP
You might like
PHP 网络开发详解之远程文件包含漏洞
2010/04/25 PHP
检测png图片是否完整的php代码
2010/09/06 PHP
PHP生成条形码大揭秘
2015/09/24 PHP
Thinkphp框架开发移动端接口(2)
2016/08/18 PHP
thinkPHP框架实现类似java过滤器的简单方法示例
2018/09/05 PHP
PHP实现网站应用微信登录功能详解
2019/04/11 PHP
jQuery select控制插件
2009/08/17 Javascript
jquery 插件学习(四)
2012/08/06 Javascript
jquery mobile页面跳转后样式丢失js失效的解决方法
2014/09/06 Javascript
实现非常简单的js双向数据绑定
2015/11/06 Javascript
nodejs加密Crypto的实例代码
2016/07/07 NodeJs
Javascript在IE和Firefox浏览器常见兼容性问题总结
2016/08/03 Javascript
jQuery实现html双向绑定功能示例
2017/10/09 jQuery
JS学习笔记之贪吃蛇小游戏demo实例详解
2019/05/29 Javascript
Vue父组件如何获取子组件中的变量
2019/07/24 Javascript
关于element的表单组件整理笔记
2021/02/05 Javascript
[00:10]DOTA2 TI9勇士令状明日上线
2019/05/07 DOTA
Python运用于数据分析的简单教程
2015/03/27 Python
python中利用xml.dom模块解析xml的方法教程
2017/05/24 Python
python编写Logistic逻辑回归
2020/12/30 Python
Python实现带下标索引的遍历操作示例
2019/05/30 Python
python实现通过队列完成进程间的多任务功能示例
2019/10/28 Python
如何在Python3中使用telnetlib模块连接网络设备
2020/09/21 Python
Python字符串对齐、删除字符串不需要的内容以及格式化打印字符
2021/01/23 Python
css3实例教程 一款纯css3实现的发光屏幕旋转特效
2014/12/07 HTML / CSS
韩国现代百货官网:Hmall
2018/03/21 全球购物
天逸系统(武汉)有限公司Java笔试题
2015/12/29 面试题
木马的传播途径主要有哪些
2016/04/08 面试题
工程项目经理岗位职责
2013/12/15 职场文书
环卫工人先进事迹材料
2014/06/02 职场文书
2014年体检中心工作总结
2014/12/23 职场文书
档案管理员岗位职责
2015/02/12 职场文书
母亲节寄语大全
2015/02/27 职场文书
网络销售员岗位职责
2015/04/11 职场文书
《认识钟表》教学反思
2016/02/16 职场文书
Django rest framework如何自定义用户表
2021/06/09 Python