提问人:sykatch 提问时间:3/13/2016 更新时间:3/13/2016 访问量:2593
如何正确将文件读取为 EOF
How to correctly read file to EOF
问:
我有一个读取文本文件中注释的函数。注释可以持续到行尾,如果没有行尾,则持续到文件末尾。我的问题是我无法找到如何测试它是否到达文件末尾。起初我有这个:
while($char != "\n" && $char != false){
$char = fgetc($inputFile);
}
如果评论中有,它会结束我不想的循环。然后我试了一下:0
while($char != "\n" && !feof($inputFile)){
$char = fgetc($inputFile);
}
这打乱了整个程序。我试图在谷歌上搜索一些东西,但这就是我所找到的。feof
!= false
答:
0赞
Bart Friederichs
3/13/2016
#1
使用 !==
检查:FALSE
while($char != "\n" && $char !== FALSE){
$char = fgetc($inputFile);
}
评论
0赞
sykatch
3/13/2016
是的,我也试过了,但我的程序在它之后开始循环。我不知道为什么,因为它工作正常,只有在角色方面才会崩溃。!==
!=
0
1赞
sykatch
3/13/2016
我刚刚发现错误在脚本的其他地方,现在工作正常,谢谢。!==
2赞
Shashank Shah
3/13/2016
#2
相反,您可以读取您的文件,直到它到达行尾!
您可以尝试 feof 函数来检查文件的末尾。
//Output a line of the file until the end is reached
while(!feof($file) {
echo fgets($file) . "<br />";
}
fclose($file);
对于 fgets 函数,如果您不指定长度,那么它将继续从流中读取,直到它到达行尾。
评论