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 相关文章推荐
PHP中的类-什么叫类
Nov 20 PHP
PHP 配置open_basedir 让各虚拟站点独立运行
Nov 12 PHP
深入理解用mysql_fetch_row()以数组的形式返回查询结果
Jun 05 PHP
file_get_contents("php://input", "r")实例介绍
Jul 01 PHP
php编写简单的文章发布程序
Jun 18 PHP
php生成图片验证码的方法
Apr 15 PHP
图文详解phpstorm配置Xdebug进行调试PHP教程
Jun 13 PHP
PHP命令行执行整合pathinfo模拟定时任务实例
Aug 12 PHP
php curl 模拟登录并获取数据实例详解
Dec 22 PHP
PHP快速推送微信模板消息
Apr 14 PHP
基于Laravel实现的用户动态模块开发
Sep 21 PHP
基于PHP的微信公众号的开发流程详解
Aug 07 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警告错误信息的解决方法
2013/06/03 PHP
PHP SPL标准库中的常用函数介绍
2015/05/11 PHP
php基于Redis消息队列实现的消息推送的方法
2018/11/28 PHP
PHP中通过getopt解析GNU C风格命令行选项
2019/11/18 PHP
PHP命名空间(namespace)原理与用法详解
2019/12/11 PHP
再谈ie和firefox下的document.all属性
2009/10/21 Javascript
js变量以及其作用域详解
2020/07/18 Javascript
Js中setTimeout()和setInterval() 何时被调用执行的用法
2013/04/12 Javascript
jquery中event对象属性与方法小结
2013/12/18 Javascript
JavaScript获取页面中表单(form)数量的方法
2015/04/03 Javascript
JS中处理时间之setUTCMinutes()方法的使用
2015/06/12 Javascript
基于jQuery实现在线选座之高铁版
2015/08/24 Javascript
jQuery Validate初步体验(一)
2015/12/12 Javascript
AngularJS基础 ng-switch 指令简单示例
2016/08/03 Javascript
用javascript获取任意颜色的更亮或更暗颜色值示例代码
2017/07/21 Javascript
VUE中使用Vue-resource完成交互
2017/07/21 Javascript
微信小程序自定义对话框弹出和隐藏动画
2018/07/19 Javascript
vue实现简单的MVVM框架
2018/08/05 Javascript
微信小程序代码上传、审核发布小程序
2019/05/18 Javascript
vue-父子组件和ref实例详解
2019/11/10 Javascript
Element-ui树形控件el-tree自定义增删改和局部刷新及懒加载操作
2020/08/31 Javascript
js实现3D粒子酷炫动态旋转特效
2020/09/13 Javascript
VUE Elemen-ui之穿梭框使用方法详解
2021/01/19 Javascript
Python基础教程之正则表达式基本语法以及re模块
2016/03/25 Python
python构建自定义回调函数详解
2017/06/20 Python
Python中logging实例讲解
2019/01/17 Python
在python下使用tensorflow判断是否存在文件夹的实例
2019/06/10 Python
python-视频分帧&多帧合成视频实例
2019/12/10 Python
Python 爬取淘宝商品信息栏目的实现
2021/02/06 Python
JavaScript实现前端网页版倒计时
2021/03/24 Javascript
气象学专业个人求职信
2014/03/15 职场文书
幼儿园六一亲子活动方案
2014/08/26 职场文书
一般基层干部群众路线教育实践活动个人对照检查材料
2014/11/04 职场文书
四风之害观后感
2015/06/09 职场文书
婚育证明样本
2015/06/16 职场文书
开学第一周日记(三篇范文)
2019/08/23 职场文书