php获取post中的json数据的实现方法


Posted in PHP onJune 08, 2011

突然想到了以前接触过flash将图片二进制流传给php,灵机一动用$GLOBALS['HTTP_RAW_POST_DATA']获取到了。
于是就深入的查了一下,原来PHP默认只识别application/x-www.form-urlencoded标准的数据类型,因此,对型如text/xml 或者 soap 或者 application/octet-stream 之类的内容无法解析,如果用$_POST数组来接收就会失败!故保留原型,交给$GLOBALS['HTTP_RAW_POST_DATA'] 来接收。

php的HTTP_RAW_POST_DATA
用Content-Type=text/xml 类型,提交一个xml文档内容给了php server,要怎么获得这个POST数据。
The RAW / uninterpreted HTTP POST information can be accessed with: $GLOBALS['HTTP_RAW_POST_DATA'] This is useful in cases where the post Content-Type is not something PHP understands (such as text/xml).
由于PHP默认只识别application/x-www.form-urlencoded标准的数据类型,因此,对型如text/xml的内容无法解析为$_POST数组,故保留原型,交给$GLOBALS['HTTP_RAW_POST_DATA'] 来接收。
另外还有一项 php://input 也可以实现此这个功能
php://input 允许读取 POST 的原始数据。和 $HTTP_RAW_POST_DATA 比起来,它给内存带来的压力较小,并且不需要任何特殊的 php.ini 设置。php://input 不能用于 enctype="multipart/form-data"。

应用

a.htm

<form action="post.php" method="post"> 
<input type="text" name="user"> 
<input type="password" name="password"> 
<input type="submit"> 
</form>

post.php
<? echo file_get_contents("php://input");?>
PHP 相关文章推荐
mysql 性能的检查和优化方法
Jun 21 PHP
php mysql Errcode: 28 终极解决方法
Jul 01 PHP
Windows7下PHP开发环境安装配置图文方法
May 20 PHP
基于PHP的cURL快速入门教程 (小偷采集程序)
Jun 02 PHP
PHP array_multisort()函数的使用札记
Jul 03 PHP
Ping服务的php实现方法,让网站快速被收录
Feb 04 PHP
解析PHP获取当前网址及域名的实现代码
Jun 23 PHP
PHP开发框架Laravel数据库操作方法总结
Sep 03 PHP
PHP+AJAX实现投票功能的方法
Sep 28 PHP
php读取本地json文件的实例
Mar 07 PHP
一文掌握PHP Xdebug 本地与远程调试(小结)
Apr 23 PHP
Laravel 已登陆用户再次查看登陆页面的自动跳转设置方法
Sep 30 PHP
常用的PHP数据库操作方法(MYSQL版)
Jun 08 #PHP
apache+php完美解决301重定向的两种方法
Jun 08 #PHP
php错误提示failed to open stream: HTTP request failed!的完美解决方法
Jun 06 #PHP
PHP 获取远程网页内容的代码(fopen,curl已测)
Jun 06 #PHP
PHP发明人谈MVC和网站设计架构 貌似他不支持php用mvc
Jun 04 #PHP
php写的简易聊天室代码
Jun 04 #PHP
php结合表单实现一些简单功能的例子
Jun 04 #PHP
You might like
php设计模式 Visitor 访问者模式
2011/06/28 PHP
php版本的cron定时任务执行器使用实例
2014/08/19 PHP
php获取数组元素中头一个数组元素值的实现方法
2014/12/20 PHP
php通过rmdir删除目录的简单用法
2015/03/18 PHP
php实现文章置顶功能的方法
2016/10/20 PHP
javascript 用记忆函数快速计算递归函数
2010/03/15 Javascript
jquery Moblie入门—hello world的示例代码学习
2013/01/08 Javascript
判断js中各种数据的类型方法之typeof与0bject.prototype.toString讲解
2013/11/07 Javascript
探寻Javascript执行效率问题
2014/11/12 Javascript
javascript继承机制实例详解
2014/11/20 Javascript
JavaScript中数据结构与算法(二):队列
2015/06/19 Javascript
js计算系统当前日期是星期几的方法
2016/07/14 Javascript
javascript 将共享属性迁移到原型中去的实现方法
2016/08/31 Javascript
jQuery插件zTree实现删除树节点的方法示例
2017/03/08 Javascript
ES6新特性之函数的扩展实例详解
2017/04/01 Javascript
layui点击导航栏刷新tab页的示例代码
2018/08/14 Javascript
微信小程序基于movable-view实现滑动删除效果
2020/01/08 Javascript
Python装饰器使用示例及实际应用例子
2015/03/06 Python
使用PyCharm配合部署Python的Django框架的配置纪实
2015/11/19 Python
Python Pandas找到缺失值的位置方法
2018/04/12 Python
Python统计纯文本文件中英文单词出现个数的方法总结【测试可用】
2018/07/25 Python
Django model反向关联名称的方法
2018/12/15 Python
十个Python练手的实战项目,学会这些Python就基本没问题了(推荐)
2019/04/26 Python
python实现3D地图可视化
2020/03/25 Python
python更新数据库中某个字段的数据(方法详解)
2020/11/18 Python
解决CSS3的opacity属性带来的层叠顺序问题
2016/05/09 HTML / CSS
澳洲的服装老品牌:SABA
2018/02/06 全球购物
美国在线家具网站:GDFStudio
2021/03/13 全球购物
西部世纪面试题
2014/12/05 面试题
大学生村官心得体会范文
2014/01/04 职场文书
《一个中国孩子的呼声》教学反思
2014/02/12 职场文书
2014年公务员思想汇报范文:全心全意为人民服务
2014/03/06 职场文书
建设单位项目负责人任命书
2014/06/06 职场文书
法人代表身份证明书及授权委托书
2014/09/16 职场文书
2014年学校禁毒工作总结
2014/12/23 职场文书
创业计划书之花店
2019/09/20 职场文书