php输入流php://input使用浅析


Posted in PHP onSeptember 02, 2014

在做一个摄像头拍照然后上传的功能,php中使用php://input来获取内容。于是就了解了下php://input。

从官网信息来看,php://input是一个只读信息流,当请求方式是post的,并且enctype不等于”multipart/form-data”时,可以使用php://input来获取原始请求的数据。

看一个简单的例子。

客户端就是一个表单,非常简单。

<form action="" method="POST">

    name: <input type="text" name="name" value="tom" /><br />

    age:<input type="text" name="age" value="22" /><br />

    <input type="submit" value="Submit" />

</form>

将表单提交到服务端,服务端使用file_get_contents获取php://input内容
$content = file_get_contents("php://input");

echo $content; //输出name=tom&age=22

官网关于php://input的说明中,反复有提到$HTTP_RAW_POST_DATA这个变量,这个变量其实和 file_get_contents(php://input)的内容是一样的。如果要开启这个变量,需要修改配置文件,找到 always_populate_raw_post_data这个选项,设置为On,然后重新启动web服务器,就可以了。而使用php://input 不需要修改php配置文件。

在项目应用中,如摄像头拍照,上传保存,就可以用到php://input。客户端拍照后,把图片流传送到服务端,服务端使用file_get_getcontents(‘php://input')就能获取到图片流,然后把图片流保存到一个文件,这个文件就是图片了。

PHP 相关文章推荐
php面向对象全攻略 (十七) 自动加载类
Sep 30 PHP
php 魔术函数使用说明
Feb 21 PHP
关于使用key/value数据库redis和TTSERVER的心得体会
Jun 28 PHP
php加密解密函数authcode的用法详细解析
Oct 28 PHP
YII中assets的使用示例
Jul 31 PHP
浅谈php函数serialize()与unserialize()的使用方法
Aug 19 PHP
推荐一款MAC OS X 下php集成开发环境mamp
Nov 08 PHP
支持中文、字母、数字的PHP验证码
May 04 PHP
基于PHP代码实现中奖概率算法可用于刮刮卡、大转盘等抽奖算法
Dec 20 PHP
php封装json通信接口详解及实例
Mar 07 PHP
Ubuntu 16.04下安装PHP 7过程详解
Mar 28 PHP
PHP7新功能总结
Apr 14 PHP
php获取URL中带#号等特殊符号参数的解决方法
Sep 02 #PHP
PHP中提问频率最高的11个面试题和答案
Sep 02 #PHP
PHP处理Json字符串解码返回NULL的解决方法
Sep 01 #PHP
PHP实现更新中间关联表数据的两种方法
Sep 01 #PHP
重新认识php array_merge函数
Aug 31 #PHP
浅析PHP中strlen和mb_strlen的区别
Aug 31 #PHP
PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法
Aug 28 #PHP
You might like
解决MySQL中文输出变成问号的问题
2008/06/05 PHP
php数组函数序列之array_slice() - 在数组中根据条件取出一段值,并返回
2011/11/07 PHP
基于empty函数的输出详解
2013/06/17 PHP
360通用php防护代码(使用操作详解)
2013/06/18 PHP
PHP编程计算日期间隔天数的方法
2017/04/26 PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
2017/06/02 PHP
js querySelector和getElementById通过id获取元素的区别
2012/04/20 Javascript
基于javascript实现九九乘法表
2016/03/27 Javascript
避免jQuery名字冲突 noConflict()方法
2016/07/30 Javascript
JavaScript实现分页效果
2017/03/28 Javascript
JavaScript+HTML5实现的日期比较功能示例
2017/07/12 Javascript
js实现省市级联效果分享
2017/08/10 Javascript
react-native中ListView组件点击跳转的方法示例
2017/09/30 Javascript
vue2.0页面前进刷新回退不刷新的实现方法
2018/07/31 Javascript
NodeJS http模块用法示例【创建web服务器/客户端】
2019/11/05 NodeJs
解决VUEX的mapState/...mapState等取值问题
2020/07/24 Javascript
Vue+penlayers实现多边形绘制及展示
2020/12/24 Vue.js
简单介绍Python的Django框架加载模版的方式
2015/07/20 Python
python openCV获取人脸部分并存储功能
2019/08/28 Python
基于pygame实现童年掌机打砖块游戏
2020/02/25 Python
Python如何读写字节数据
2020/08/05 Python
Python面向对象实现方法总结
2020/08/12 Python
HTML5 input元素类型:email及url介绍
2013/08/13 HTML / CSS
德国家具折扣店:POCO
2020/02/28 全球购物
建筑施工员岗位职责
2013/11/26 职场文书
2014年创先争优活动总结
2014/05/04 职场文书
党的群众路线教育实践活动个人剖析材料
2014/10/07 职场文书
毕业生银行实习自我鉴定
2014/10/14 职场文书
整改报告格式
2014/11/06 职场文书
2015年团队工作总结范文
2015/05/04 职场文书
工程项目合作意向书
2015/05/08 职场文书
2015年生产部工作总结范文
2015/05/25 职场文书
活动简报范文
2015/07/22 职场文书
早上好问候语大全
2015/11/10 职场文书
Go语言带缓冲的通道实现
2021/04/26 Golang
四十九个javascript小知识实用技巧
2021/11/20 Javascript