feof関数

関数 feof は、ファイル読み取り時に終端に達したかどうかをチェックします。これは、関数 fopen によって正常に開かれたファイルポインタを唯一のパラメータとして受け取ります。ファイル終端に達している場合は true を、そうでない場合は false を返します。

構文

phpfeof(resource $handle): bool

例

ファイル読み取り時に終端に達したかどうかをチェックします:

php<?php
  $file = fopen('test.txt', 'r');
  
  while (!feof($file)) {
    echo fgets($file);
  }
  
  fclose($file);
?>

この例では、ファイルの終端に達するまでファイルを行ごとに読み取ります。

例

ファイルを開いた後のファイルポインタの状態をチェックします:

php<?php
  $file = fopen('empty.txt', 'r');
  var_dump(feof($file));
  fclose($file);
?>

空のファイルに対するコード実行結果:

phptrue

例

ファイルを開く際のエラー処理:

php<?php
  $file = @fopen('nonexistent.txt', 'r');
  
  if ($file === false) {
    echo "File not found";
  } else {
    while (!feof($file)) {
      echo fgets($file);
    }
    fclose($file);
  }
?>

ファイルが存在しない場合のコード実行結果:

php'File not found'

関連項目

  • 関数 fread,
    ファイルから読み取ります
  • 関数 fgets,
    ファイルから一行読み取ります
  • 関数 rewind,
    ファイルポインタを巻き戻します