在PHP中,有没有办法将一个“文件”的内容管道或流式传输到另一个“文件”?
这就是我现在正在做的事情,
$rfp = fopen('php://input', 'r');
$wfp = fopen($this->file_path, 'x');
while(!feof($rfp)) {
fwrite($wfp, fread($rfp, 1048576));
}
fclose($wfp);
fclose($rfp);
哪种方法很好,但在将输入流写入输出流之前从输入流中读取任意块似乎很有趣。我想,如果我可以告诉它从一个地方读取并直接发送到另一个地方,那么文件系统或操作系统可以更高效地完成它。
在Node中,您可以将一个文件流“管道”到另一个文件流。在PHP中有这个功能吗?
答案 0 :(得分:2)
试
copy("php://input", $this->file_path);
或第二种方法:
$objStream = fopen("php://input", "r");
$dest = fopen($this->file_path, 'x');
stream_copy_to_stream($objStream , $dest);