谈谈PHP的输入输出流


Posted in PHP onFebruary 14, 2007

今天有人再PHPCHINA上问我关于PHP传XML怎么做?,再上面已经给出了相应的解决方法。顺便谈谈PHP的输入输出流。

   今天暑假在公司的时候,恰好同事使用flash打造流媒体的时候,需要使用PHP读取FLASH传递过来的媒体信息(也是XML格式),在那个时候我也熟悉了PHP的基本输入输出流原理。

   手册上说:

PHP 3.0.13 及以上版本,自 PHP 4.3.0 起支持 php://output 和 php://input,自 PHP 5.0.0 起支持 php://filter。 

php://stdin

php://stdout

php://stderr

php://output

php://input

php://filter

php://stdin,php://stdout 和 php://stderr 允许访问 PHP 进程相应的输入或者输出流。 

php://output 允许向输出缓冲机制写入数据,和 print() 与 echo() 的方式相同。 

php://input 允许读取 POST 的原始数据。和 $HTTP_RAW_POST_DATA 比起来,它给内存带来的压力较小,并且不需要任何特殊的 php.ini 设置。php://input 不能用于 enctype="multipart/form-data"。 

php://stdin 和 php://input 是只读的,同时 php://stdout,php://stderr 和 php://output 是只写的。 

php://filter 是一种设计用来允许过滤器程序在打开时成为流的封装协议。这对于单独具有完整功能的文件函数例如 readfile(),file() 和 file_get_contents() 很有用,否则就没有机会在读取内容之前将过滤器应用于流之上。 

   也就是说post的原始数据是保存在一个叫php://input的文件。你可以通过简单的文件操作读取里面的数据来控制。

$data=file_get_contents(’php://input’); 

PHP 相关文章推荐
PR值查询 | PageRank 查询
Dec 20 PHP
解决ajax+php中文乱码的方法详解
Jun 09 PHP
Javascript与PHP验证用户输入URL地址是否正确
Oct 09 PHP
PHP中防止SQL注入方法详解
Dec 25 PHP
浅谈php命令行用法
Feb 04 PHP
php批量修改表结构实例
May 24 PHP
Yii框架扩展CGridView增加导出CSV功能的方法
May 24 PHP
php实现批量上传数据到数据库(.csv格式)的案例
Jun 18 PHP
PHP实现根据数组某个键值大小进行排序的方法
Mar 13 PHP
PHP与Perl之间知识点区别整理
Mar 19 PHP
Thinkphp 框架基础之源码获取、环境要求与目录结构分析
Apr 27 PHP
PHP操作Redis常用命令的实例详解
Dec 23 PHP
修改了一个很不错的php验证码(支持中文)
Feb 14 #PHP
PHP数据缓存技术
Feb 14 #PHP
再次研究下cache_lite
Feb 14 #PHP
cache_lite试用
Feb 14 #PHP
一个捕获函数输出的函数
Feb 14 #PHP
模拟flock实现文件锁定
Feb 14 #PHP
回答PHPCHINA上的几个问题:URL映射
Feb 14 #PHP
You might like
PHP执行速率优化技巧小结
2008/03/15 PHP
WordPress判断用户是否登录的代码
2011/03/17 PHP
PHP 数据结构 算法 三元组 Triplet
2011/07/02 PHP
php通过session防url攻击方法
2014/12/10 PHP
php可应用于面包屑导航的迭代寻找家谱树实现方法
2015/02/02 PHP
PHP 结合 Boostrap 结合 js 实现学生列表删除编辑及搜索功能
2019/05/21 PHP
最新最热最实用的15个jQuery插件汇总
2015/07/05 Javascript
jQuery实现无限往下滚动效果代码
2016/04/16 Javascript
Summernote实现图片上传功能的简单方法
2016/07/11 Javascript
微信小程序开发之麦克风动画 帧动画 放大 淡出
2017/04/18 Javascript
Vue 换肤的示例实践
2018/01/23 Javascript
JS根据json数组多个字段排序及json数组常用操作
2019/06/06 Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
2019/07/13 Javascript
基于Vue.js与WordPress Rest API构建单页应用详解
2019/09/16 Javascript
Vue 实现一个命令式弹窗组件功能
2019/09/25 Javascript
windows下create-react-app 升级至3.3.1版本踩坑记
2020/02/17 Javascript
vue实现简单加法计算器
2020/10/22 Javascript
Python3中内置类型bytes和str用法及byte和string之间各种编码转换 问题
2018/09/27 Python
python实现QQ批量登录功能
2019/06/19 Python
python用for循环求和的方法总结
2019/07/08 Python
Python解决pip install时出现的Could not fetch URL问题
2019/08/01 Python
python requests抓取one推送文字和图片代码实例
2019/11/04 Python
Python3 操作 MySQL 插入一条数据并返回主键 id的实例
2020/03/02 Python
python中封包建立过程实例
2021/02/18 Python
使用HTML5技术开发一个属于自己的超酷颜色选择器
2013/09/22 HTML / CSS
HTML5中的Scoped属性使用实例
2014/04/23 HTML / CSS
惠普美国官方商店:HP Official Store
2016/08/28 全球购物
N.Peal官网:来自伦敦的高档羊绒品牌
2018/10/29 全球购物
法国房车租赁网站:Yescapa
2019/08/26 全球购物
高中体育教学反思
2014/01/24 职场文书
海飞丝广告词
2014/03/20 职场文书
个人廉洁自律承诺书
2014/03/27 职场文书
2015年党支部公开承诺书
2015/01/22 职场文书
音乐教师个人总结
2015/02/06 职场文书
2015年暑假生活总结
2015/07/13 职场文书
Python使用MapReduce进行简单的销售统计
2022/04/22 Python