Php 如何通过包含文件内容的流进行搜索?

Php 如何通过包含文件内容的流进行搜索?,php,stream,file-get-contents,Php,Stream,File Get Contents,我正在使用PHP运行Web服务。其中一个url需要从帖子正文中获取几张图片。我目前正在使用fopen/fread解决方案: $size1 = intval($_REQUEST['img1']); $size2 = intval($_REQUEST['img2']); $sizeToRead = 4096; $datas1 = null; $datas2 = null; $h = fopen('php://input','r+'); while($size1 > 0) { if($

我正在使用PHP运行Web服务。其中一个url需要从帖子正文中获取几张图片。我目前正在使用fopen/fread解决方案:

$size1 = intval($_REQUEST['img1']);
$size2 = intval($_REQUEST['img2']);
$sizeToRead = 4096;
$datas1 = null;
$datas2 = null;

$h = fopen('php://input','r+');
while($size1 > 0) {
    if($sizeToRead > $size1)
        $sizeToRead = $size1;

    $datas1 .= fread($h,$sizeToRead);
    $size1 -= $sizeToRead;
}
fclose($h);

file_put_contents('received1.png',$datas1);
//Same thing for the second image
此解决方案工作正常,但我正试图通过使用
file\u get\u contents()
,使其更具可读性:

file_put_contents('received1.png',file_get_contents('php://input',false,null,0,$size1));
但这给了我一个错误:

file_get_contents()流不支持查找
文件_get_contents()未能在流中查找位置21694

甚至可以在溪流中寻找吗?也许把第三个参数改成别的

如果没有,有没有办法使我的代码更加优雅/高效

谢谢。

引用:

注意:以php://input 只能阅读一次流不支持搜索操作。但是,根据SAPI实现,可能会打开另一个php://input 流并重新开始读取。只有在已保存请求正文数据的情况下,才能执行此操作。通常,POST请求是这种情况,但其他请求方法(如PUT或PROPFIND)则不是这种情况

(我的重点)

文件获取内容()将如何使任何内容更具可读性?