为什么从我刚刚编写的php://内存包装器中读取失败?

jim*_*mmy 6 php

我试图从php://memory包装器中读取fread()fread()总是返回false.我的代码简化了:

$file_handle = fopen('php://memory', 'w+'); // Have tried php:temp also.
fwrite($file_handle, 'contents');
$file = fread($file_handle, filesize($file_handle)); // Have also tried 99999 for filesize.
Run Code Online (Sandbox Code Playgroud)

$file之后总是假的fread().

这是怎么回事?

提前致谢!

Mar*_*ker 11

你需要在写完之后回滚($ file_handle),然后才能阅读你刚才写的内容,因为写入会将文件指针移动到文件的末尾