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 相关文章推荐
实例(Smarty+FCKeditor新闻系统)
Jan 02 PHP
php修改NetBeans默认字体的大小
Jul 02 PHP
深入解析Session是否必须依赖Cookie
Aug 02 PHP
php获取新浪微博数据API实例
Nov 12 PHP
php导出csv数据在浏览器中输出提供下载或保存到文件的示例
Apr 24 PHP
php获取url参数方法总结
Nov 13 PHP
php中常量DIRECTORY_SEPARATOR用法深入分析
Nov 14 PHP
thinkPHP简单调用函数与类库的方法
Mar 15 PHP
php实现支持中文的文件下载功能示例
Aug 30 PHP
PHP的PDO事务与自动提交
Jan 24 PHP
php+mysql开发的最简单在线题库(在线做题系统)完整案例
Mar 30 PHP
使用SMB共享来绕过php远程文件包含的限制执行RFI的利用
May 31 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
音乐朗读剧《MARS RED》2021年TV动画化决定!
2020/03/06 日漫
无数据库的详细域名查询程序PHP版(1)
2006/10/09 PHP
PHP中捕获超时事件的方法实例
2015/02/12 PHP
php实现通用的从数据库表读取数据到数组的函数实例
2015/03/21 PHP
Yii2中YiiBase自动加载类、引用文件方法分析(autoload)
2016/07/25 PHP
PHP 应用容器化以及部署方法
2018/02/12 PHP
PHP实现一个按钮点击上传多个图片操作示例
2020/01/23 PHP
jquery 插件 任意位置浮动固定层
2008/12/25 Javascript
Cookie 小记
2010/04/01 Javascript
JavaScript Scoping and Hoisting 翻译
2012/07/03 Javascript
完美解决AJAX跨域问题
2013/11/01 Javascript
jQuery设置指定网页元素宽度和高度的方法
2015/03/25 Javascript
使用bootstrap validator的remote验证代码经验分享(推荐)
2016/09/21 Javascript
详解AngularJs ui-router 路由的简单介绍
2017/04/26 Javascript
vue获取input输入值的问题解决办法
2017/10/17 Javascript
vue-router相关基础知识及工作原理
2018/03/16 Javascript
React Native开发封装Toast与加载Loading组件示例
2018/09/08 Javascript
JS拖拽排序插件Sortable.js用法实例分析
2019/02/20 Javascript
React 使用Hooks简化受控组件的状态绑定
2019/03/18 Javascript
Node.js使用supervisor进行开发中调试的方法
2019/03/26 Javascript
收集的几个Python小技巧分享
2014/11/22 Python
Python中的super()方法使用简介
2015/08/14 Python
python3编码问题汇总
2016/09/06 Python
python3实现多线程聊天室
2018/12/12 Python
Python离线安装PIL 模块的方法
2019/01/08 Python
python字符串判断密码强弱
2020/03/18 Python
Dockers美国官方网站:卡其裤、男士服装、鞋及配件
2016/11/22 全球购物
西班牙宠物用品和食品网上商店:Tiendanimal
2019/06/06 全球购物
Gerry Weber德国官网:优质女性时装,德国最大的时装公司之一
2019/11/02 全球购物
采购内勤岗位职责
2013/12/10 职场文书
开展党的群众路线教育实践活动方案
2014/02/05 职场文书
岗位廉洁从政承诺书
2014/03/27 职场文书
产品售后服务承诺书
2014/05/21 职场文书
2014迎国庆标语大全
2014/09/19 职场文书
2015年五四青年节活动总结
2015/02/10 职场文书
浅谈pytorch中stack和cat的及to_tensor的坑
2021/05/20 Python