php输入流php://input使用示例(php发送图片流到服务器)

2015-01-24信息快讯网

在做一个摄像头拍照然后上传的功能,php中使用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网页游戏学习之Xnova(ogame)源码解读(十一)
PHP获取windows登录用户名的方法
PHP获取MySql新增记录ID值的3种方法
PHP判断表单复选框选中状态完整例子
PHP网页游戏学习之Xnova(ogame)源码解读(十)
destoon网站转移服务器后搜索汉字出现乱码的解决方法
php使用百度ping服务代码实例
单台服务器的PHP进程之间实现共享内存的方法
在PHP中运行Linux命令并启动SSH服务的例子
PHP实例分享判断客户端是否使用代理服务器及其匿名级别
php获取表单中多个同名input元素的值
jQuery中的RadioButton,input,CheckBox取值赋值实现代码
php缓冲 output_buffering和ob_start使用介绍
php截取中文字符串不乱码的方法
php二维数组排序方法(array_multisort usort)
php缩小png图片不损失透明色的解决方法
php查看请求头信息获取远程图片大小的方法分享
php对数组排序的简单实例
ubuntu12.04使用c编写php扩展模块教程分享
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
php安装xdebug/php安装pear/phpunit详解步骤(图)
使用php判断服务器是否支持Gzip压缩功能
浅析linux下apache服务器的配置和管理
IIS6.0中配置php服务全过程解析
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
PHP中fwrite与file_put_contents性能测试代码
Php output buffering缓存及程序缓存深入解析
PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
浅析php插件 HTMLPurifier HTML解析器
file_get_contents("php://input", "r")实例介绍
©2014-2024 dbsqp.com