Dan*_*ugg 1 php memory temporary stream handle
这个问题与我关于这个问题的新发现密切相关.
有没有什么办法来保存的数据流中的数据php://memory或php://temp手柄之间?我读过(我无法获取的某个地方)上述流的后续开放清除了现有数据.
$mem1 = fopen('php://memory', 'r+');
fwrite($mem1, 'hello world');
rewind($mem1);
fpassthru($mem1); // "hello world"
$mem2 = fopen('php://memory', 'r+');
rewind($mem2);
fpassthru($mem2); // empty
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,无论如何,在创建新句柄时,是否还要强制现有数据保持在流中?
(后者调用fpassthru()当然会转储,hello world因为这是可能的)
打开其中一个伪流php://temp或php://memory始终打开一个新流,这意味着,您以这种方式打开的每个流都是唯一的.因此,您无法读取先前写入另一个流的内容.