卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章64334本站已运行4115

翻译:PHP php://

翻译:PHP php://

简介

php://包装器支持对各种 I/O 流的访问。这包括标准输入、输出和错误流。内存中、磁盘支持和过滤的流也可以通过 php:// 协议访问。

标准流

php://stdin, php://stdout php://stderr 分别允许 PHP 进程直接访问标准输入流设备、标准输出流和错误流。预定义常量 STDINSTDOUTSTDERR 分别表示这些流。

php://input

< p>php://input 允许对 HTTP 请求正文中包含的原始数据进行只读访问。请注意,$HTTP_POST_RAW-DATA 变量中提供了相同的数据(现已弃用)。但是,php://input 不适用于 enctype 属性设置为 multipart/form-data

php://output

此包装器代表只写流,允许缓冲机制,类似于 printecho 语句。

php://fd

a文件描述符可通过此包装器访问。标准流 STDIN、STDOUT 和 STDERR 分配有文件描述符 1,2 和 3。每个其他流都分配有递增文件描述符。因此 php://fd/5 指的是文件描述符 5

php://memory

这是一个读/写流,允许数据临时存储在内存中。 php://temp 包装器类似。但是,在后者的情况下,数据存储在临时文件中而不是内存中。

php://filter

此包装器允许在流被过滤时将过滤器应用于流。打开。过滤器对于 readfile()、file_get_contents() 和 file() 函数特别有用。

示例

在以下示例中,控制台输入是从 php://stdin 读取的 并使用 php://stdout

显示输出
<?php
$file=fopen("php://stdin","r");
$x=fread($file,10);
echo $x;
$out=fopen("php://stdout","w");
fwrite($out, $x);
fclose($file);
?>

php://input 流包装器允许从 HTTP 请求获取原始数据。在下面的示例中,HTML 表单使用 POST 方法将数据发送到 PHP 脚本

<html>
<body>
<form action="testscript.php" method="POST">
   <input type="text" name="name">
   <input type="text" name="age">
   <input type ="submit" value="submit">
</form>
</body>
</html>

检索原始 HTTP 数据的 PHP 脚本如下 -

<?php
$json = file_get_contents("php://input");
$data = json_decode($json);
print_r($json);
?>

卓越飞翔博客
上一篇: PHP邮箱验证登录注册功能的实现原理和技巧介绍
下一篇: PHP开发实时聊天系统的在线状态展示与在线人数统计
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏