0

我试图找出 PHP 中的文件指针,所以我写了一个小脚本来测试它:

$fp = fopen('test.me', 'w+');
fwrite($fp, '12345');
rewind($fp);
echo 'contents: ['.stream_get_contents($fp)."]\n";
fseek($fp, 0, SEEK_END);
fwrite($fp, '6789');
fclose($fp);
echo 'contents: ['.file_get_contents('test.me')."]\n";

好,易于。打开一个文件以从中读取/写入。写给它。回到文件的开头,打印出它的内容。转到文件的末尾,添加更多内容。最后,打印出文件的全部内容。

我运行它并得到我期望的确切结果:

contents: [12345]
contents: [123456789]

我为自己写了这部杰作而感到自豪,我去我的终端并点击并再次运行它。

这次:

contents: []
contents: [123456789]

事实证明,如果文件在脚本开头存在,则第一个块始终是contents:[]. 如果我删除test.me文件,那么第一个块是contents:[12345].

这里发生了什么?

4

0 回答 0