PHP 输入和输出流是通过 php://
来访问的,它允许访问 PHP 的输入输出流、标准输入输
出和错误描述符, 内存中、磁盘备份的临时文件流以及可以操作其他读取写入文件资源
的过滤器。
php://stdin, php://stdout
和 php://stderr
php://stdin,php://stdout
和 php://stderr
允许访问 PHP 进程相应的输入或者输出流。
php://input
php://input
是个可以访问请求的原始数据的只读流。 POST 请求的情况下,最好使
用 php://input 来代替 $HTTP_RAW_POST_DATA(原生的 post 数据),因为它不依
赖于特定的 php.ini 指令,内存消耗更少。如下例:
1.
<form
action
=
""
method
=
"post"
>
2.
<input
type
=
"text"
name
=
"test"
>
<input
type
=
"submit"
name
=
""
/>
3. </form>
4.
<?
php
5. echo file_get_contents
(
"php://input"
);
6. ?>
结果:
php://output
php://output
是一个只写的数据流, 允许你以 print 和 echo
一样的方式 写入到输出
缓冲区。
php://fd
php://fd
允许直接访问指定的文件描述符。 例如 php://fd/3
引用了文件描述符 3。
php://memory
和 php://temp
php://memory 和 php://temp
是一个类似文件 包装器的数据流,允许读写临时数据。
两者的唯一区别是 php://memory
总是把数据储存在内存中, 而 php://temp 会在内