Funktio feof

Funktio feof tarkistaa, onko tiedoston loppu saavutettu lukemisen yhteydessä. Se ottaa yhden parametrin - osoittimen tiedostoon, joka on onnistuneesti avattu funktiolla fopen. Palauttaa true, jos tiedoston loppu on saavutettu, ja false muussa tapauksessa.

Syntaksi

phpfeof(resource $handle): bool

Esimerkki

Tarkistetaan, onko tiedoston loppu saavutettu lukemisen yhteydessä:

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

Tässä esimerkissä luemme tiedostoa rivi kerrallaan, kunnes saavutamme sen lopun.

Esimerkki

Tarkistetaan tiedosto-osoittimen tila tiedoston avaamisen jälkeen:

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

Koodin suorituksen tulos tyhjälle tiedostolle:

phptrue

Esimerkki

Virheen käsittely tiedoston avaamisessa:

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

Koodin suorituksen tulos jos tiedostoa ei ole olemassa:

php'File not found'

Katso myös

  • funktion fread,
    joka lukee tiedostosta
  • funktion fgets,
    joka lukee rivin tiedostosta
  • funktion rewind,
    joka nollaa tiedosto-osoittimen