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实现网上点歌(二)
Oct 09 PHP
php ss7.5的数据调用 (笔记)
Mar 08 PHP
PHP实现的博客欢迎提示功能(很特别哦)
Jun 05 PHP
PHP之正则表达式捕获组与非捕获组(详解)
Jul 29 PHP
微信公众平台开发之配置与请求
Aug 26 PHP
PHP 匿名函数与注意事项详细介绍
Nov 26 PHP
CI框架实现框架前后端分离的方法详解
Dec 30 PHP
PHP实现的简单异常处理类示例
May 04 PHP
浅谈PHP SHA1withRSA加密生成签名及验签
Mar 18 PHP
PHP中ltrim()函数的用法与实例讲解
Mar 28 PHP
在laravel中实现事务回滚的方法
Oct 10 PHP
ThinkPHP5.1+Ajax实现的无刷新分页功能示例
Feb 10 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
在普通HTTP上安全地传输密码
2007/07/21 PHP
php is_file()和is_dir()用于遍历目录时用法注意事项
2010/03/02 PHP
php绘制一条直线的方法
2015/01/24 PHP
smarty高级特性之过滤器的使用方法
2015/12/25 PHP
php mailer类调用远程SMTP服务器发送邮件实现方法
2016/03/04 PHP
php原生导出excel文件的两种方法(推荐)
2016/11/19 PHP
一键生成各种尺寸Icon的php脚本(实例)
2017/02/08 PHP
基于Jquery的淡入淡出的特效基础练习
2010/12/13 Javascript
javascript原始值和对象引用实例分析
2015/04/25 Javascript
jquery代码实现多选、不同分享功能
2015/07/31 Javascript
JavaScript实现的浮动层框架用法实例分析
2015/10/10 Javascript
分享JS数组求和与求最大值的方法
2016/08/11 Javascript
微信小程序 textarea 详解及简单使用方法
2016/12/05 Javascript
Node Puppeteer图像识别实现百度指数爬虫的示例
2018/02/22 Javascript
vue中使用vee-validator完成表单校验方案
2019/11/01 Javascript
vue路由的配置和页面切换详解
2020/09/09 Javascript
[04:14]从西雅图到上海——玩家自制DOTA2主题歌曲应援TI9
2019/07/11 DOTA
详解Python迭代和迭代器
2016/03/28 Python
python交互式图形编程实例(三)
2017/11/17 Python
Python实现的远程登录windows系统功能示例
2018/06/21 Python
使用python读取csv文件快速插入数据库的实例
2018/06/21 Python
详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)
2019/03/26 Python
Python StringIO及BytesIO包使用方法解析
2020/06/15 Python
python爬取招聘要求等信息实例
2020/11/20 Python
阿里健康大药房:阿里自营网上药店
2017/08/01 全球购物
飞利浦法国官网:Philips法国
2019/07/10 全球购物
数控技术应用个人求职信范文
2014/02/03 职场文书
医学专业大学生求职信
2014/07/12 职场文书
稽核岗位职责
2015/02/10 职场文书
英语辞职信范文
2015/02/28 职场文书
个人简历求职信范文
2015/03/20 职场文书
法人身份证明书
2015/06/18 职场文书
2016党员读书思廉心得体会
2016/01/23 职场文书
优秀创业计划书分享
2019/07/19 职场文书
centos8安装nginx1.9.1的详细过程
2021/08/02 Servers
java objectUtils 使用可能会出现的问题
2022/02/28 Java/Android