ホームページ  >  記事  >  バックエンド開発  >  PHP feof は、ファイル ポインターが file_PHP チュートリアルの最後に到達したかどうかをテストします。

PHP feof は、ファイル ポインターが file_PHP チュートリアルの最後に到達したかどうかをテストします。

WBOY
WBOYオリジナル
2016-07-13 17:41:11963ブラウズ

EOF は非常に重要な概念です。ほとんどすべての主流プログラミング言語には、パーサーがファイル EOF に到達したかどうかを確認するための対応する組み込み関数が用意されています。 PHP では、この関数は feof() です。 feof() 関数は、リソースの終わりに到達したかどうかを判断するために使用されます。ファイル I/O 操作でよく使用されます。その形式は次のとおりです:
int feof(string resource)
コード例は次のとおりです:
$fh = fopen("/home/www/data/users.txt", "rt");
while (!feof ($fh)) echo fgets($fh);
fclose($fh);
?>

bool feof ( resource $handle ): これからファイル ポインターのファイルの終わりをテストします
phpマニュアル 正確な言葉。
便宜上、以前はこのように使用していました
// ファイルを読み取れない、またはファイルが存在しない場合、fopen 関数は FALSE を返します
$file = @fopen("no_ such_file", "r");
/ / fopen からの FALSE は警告を発行し、ここで無限ループになります
while (!feof($file)) {
}
fclose($file);
?>

確かに、このように使うと簡単です。ただし、上記の変数 $file が正当なファイル ポインタではないか、fclose によって閉じられている場合は、
すると、プログラムの6行目で警告が発生し、無限ループが発生します。
なぜですか?
その理由は、
ファイルポインタがEOFにある場合、またはエラーが発生した場合(ソケットタイムアウトを含む)はTRUEを返し、それ以外の場合はFALSEを返すためです。
そのため、安全のために、上記のコードを使用するときに判断を追加するのが最善です。 is_resource の方がまだ安全です

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/486144.html技術記事 EOF は非常に重要な概念であり、ほとんどすべての主流プログラミング言語には、パーサーがファイル EOF に到達したかどうかを検証するための対応する組み込み関数が用意されています。 PHP では、この関数は feof() です。フェオ...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。