如何正确读取文件到 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);
}

这打断了整个节目。我尝试 google 一些东西,但 feof!= false 是我找到的全部。

使用 !== 检查 FALSE:

while($char != "\n" && $char !== FALSE){
    $char = fgetc($inputFile);
}

相反,您可以阅读文件直到它到达行尾!

您可以试试feof函数来检查文件的结尾。

//Output a line of the file until the end is reached
while(!feof($file) {
    echo fgets($file) . "<br />";
}
fclose($file);

对于 fgets 函数,如果您不指定长度,那么它将继续从流中读取,直到到达行尾。