Php 具有模式a的fopen不会将指针设置为结束
我希望如此Php 具有模式a的fopen不会将指针设置为结束,php,Php,我希望如此 $handle = fopen('file.txt', 'a'); var_dump(feof($handle)); 返回true,因为模式“a”在文件末尾设置指针。相反,它输出为false。feof()不会告诉您处于文件末尾,除非您执行了读取操作才能到达那里。由于无法从仅附加的文件中读取,feof()将永远不会返回true。fopen()出现错误时将返回false。Apache在您试图写入的目录中有写权限吗?是的,var\u dump($handle)的输出是什么?我检查了is_
$handle = fopen('file.txt', 'a');
var_dump(feof($handle));
返回true,因为模式“a”在文件末尾设置指针。相反,它输出为false。
feof()
不会告诉您处于文件末尾,除非您执行了读取操作才能到达那里。由于无法从仅附加的文件中读取,feof()
将永远不会返回true。fopen()
出现错误时将返回false。Apache在您试图写入的目录中有写权限吗?是的,var\u dump($handle)的输出是什么代码>?我检查了is_writeable,它返回true。这在你这边有不同的表现吗?我可以确认这个问题ftell
在code$fHandle=fopen(SITE_PATH.“tests/csv1.csv”,“a”)中报告int(0)
;如果($fHandle!==false){var_dump(ftell($fHandle));}
…也就是说,fwrite
仍然附加到文件,即使文件指针没有放在末尾。使用fwrite
打印一个字符后,ftell
报告int(1)
,该字符仍然不是文件的结尾,但已添加到结尾而不是开始。