Funcția feof

Funcția feof verifică dacă a fost atins sfârșitul fișierului la citire. Ea acceptă un parametru - un pointer la fișier care a fost deschis cu succes de funcția fopen. Returnează true dacă sfârșitul fișierului a fost atins și false în caz contrar.

Sintaxă

phpfeof(resource $handle): bool

Exemplu

Să verificăm dacă a fost atins sfârșitul fișierului la citire:

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

În acest exemplu citim fișierul linie cu linie până când îi atingem sfârșitul.

Exemplu

Să verificăm starea pointerului de fișier după deschiderea fișierului:

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

Rezultatul executării codului pentru un fișier gol:

phptrue

Exemplu

Prelucrarea erorii la deschiderea fișierului:

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

Rezultatul executării codului dacă fișierul nu există:

php'File not found'

Vedeți și

  • funcția fread,
    care citește din fișier
  • funcția fgets,
    care citește o linie din fișier
  • funcția rewind,
    care resetează pointerul fișierului