从流中获取数据后如何将数据恢复?

时间:2016-10-25 13:39:49

标签: php wordpress

我正在收到像这样的帖子数据

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

我希望将数据放回流中,因此我按照上述方法

修改了方法
$stream = fopen('php://temp', 'w+');
stream_copy_to_stream(fopen('php://input', 'r'), $stream);
rewind($stream);

但它不起作用。任何人都可以告诉我哪里做错了吗? 在wordpress插件开发中需要这种情况。如果一个插件读取发布数据,则其他插件无法获取该数据 感谢

2 个答案:

答案 0 :(得分:0)

正如documentation中所述,php://input只能读取一次,并且不支持搜索操作。

阅读'的唯一方法多次输入流是通过在程序中传递它的副本。

答案 1 :(得分:0)

PHP输入流包含请求正文,只有当请求包含正文时,您的示例才会起作用。

curl -X POST -H "Content-Type: application/json" -H "Cache-Control: no-cache"  -d 'sample body' "YOUR_ADDRESS"

检查添加到代码:

echo fgets($stream);
  

php://输入不适用于enctype =" multipart / form-data"。

http://php.net/manual/en/wrappers.php.php