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 相关文章推荐
从C/C++迁移到PHP——判断字符类型的函数
Oct 09 PHP
php下用GD生成生成缩略图的两个选择和区别
Apr 17 PHP
php Rename 更改文件、文件夹名称
May 24 PHP
PHP程序级守护进程的实现与优化的使用概述
May 02 PHP
php解压文件代码实现php在线解压
Feb 13 PHP
php实现天干地支计算器示例
Mar 14 PHP
PHP实现的MongoDB数据库操作类分享
May 12 PHP
php使用pdo连接mssql server数据库实例
Dec 25 PHP
php PDO实现的事务回滚示例
Mar 23 PHP
Yii框架数据库查询、增加、删除操作示例
Oct 14 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
Feb 15 PHP
TP5框架实现自定义分页样式的方法示例
Apr 05 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导入大量数据到mysql性能优化技巧
2014/12/29 PHP
Laravel 5框架学习之环境与配置
2015/04/08 PHP
Yii安装与使用Excel扩展的方法
2016/07/13 PHP
php的无刷新操作实现方法分析
2020/02/28 PHP
javascript基本语法分析说明
2008/06/15 Javascript
jquery 按键盘上的enter事件
2014/05/11 Javascript
上传图片预览JS脚本 Input file图片预览的实现示例
2014/10/23 Javascript
jQuery结合HTML5制作的爱心树表白动画
2015/02/01 Javascript
基于Vuejs和Element的注册插件的编写方法
2017/07/03 Javascript
AngularJS 购物车全选/取消全选功能的实现方法
2017/08/14 Javascript
js异步编程小技巧详解
2017/08/14 Javascript
微信小程序 按钮滑动的实现方法
2017/09/27 Javascript
Vue源码探究之状态初始化
2018/11/14 Javascript
javascript for循环性能测试示例
2019/08/07 Javascript
Vue+webpack实现懒加载过程解析
2020/02/17 Javascript
深入了解JavaScript词法作用域
2020/07/29 Javascript
js将日期格式转换为YYYY-MM-DD HH:MM:SS
2020/09/18 Javascript
design vue 表格开启列排序的操作
2020/10/28 Javascript
js实现鼠标拖曳效果
2020/12/30 Javascript
Python中关于使用模块的基础知识
2015/05/24 Python
Python中functools模块函数解析
2017/03/12 Python
Flask框架使用DBUtils模块连接数据库操作示例
2018/07/20 Python
Python设计模式之观察者模式原理与用法详解
2019/01/16 Python
django url到views参数传递的实例
2019/07/19 Python
Python使用graphviz画流程图过程解析
2020/03/31 Python
Python logging模块写入中文出现乱码
2020/05/21 Python
python中Django文件上传方法详解
2020/08/05 Python
匡威帆布鞋美国官网:Converse美国
2016/08/22 全球购物
绘儿乐产品官方在线商店:Crayola.com
2019/09/07 全球购物
应届生求职简历的自我评价怎么写
2013/10/23 职场文书
业务员岗位职责
2013/11/16 职场文书
平面设计专业大学生职业规划书
2014/03/12 职场文书
给小学生的新年寄语
2014/04/04 职场文书
中学生英语演讲稿
2014/04/26 职场文书
化学专业毕业生求职信
2014/07/28 职场文书
特种设备安全管理制度
2015/08/06 职场文书