Teste la fin du fichier

# feof

(PHP 4, PHP 5, PHP 7, PHP 8)

feof — Teste la fin du fichier

### Description

function feof(resource `$stream`): bool

Teste la fin du fichier.

### Liste de paramètres

`stream`
  Le pointeur de fichier doit être valide et pointer sur un fichier ouvert avec succès par fopen() ou fsockopen() (et pas encore fermé par fclose()).

### Valeurs de retour

Retourne `true` si le pointeur `stream` est à la fin du fichier ou si une erreur survient (y compris les délais d'attente de socket), sinon, retourne `false`.

### Notes

Avertissement

Si une connexion ouverte avec fsockopen() n'est pas fermée par le serveur, feof() se bloquera. Pour contourner ce comportement, se reporter à l'exemple ci-dessous :

Exemple #1 Gestion des délais d'attente dépassés avec feof()

    <?php
    function safe_feof($fp, &$start = NULL) {
     $start = microtime(true);

     return feof($fp);
    }

    /* Assumons que $fp a été précédemment ouvert par fsockopen() */

    $start = NULL;
    $timeout = ini_get('default_socket_timeout');

    while(!safe_feof($fp, $start) && (microtime(true) - $start) < $timeout)
    {
     /* Gestion */
    }
    ?>

Avertissement

Si le pointeur de fichier passé n'est pas valide, le résultat sera une boucle infinie car feof() échouera à retourner `true`.

Exemple #2 Exemple avec feof() et un pointeur de fichier invalide

    <?php
    // Si le fichier ne peut être lu ou n'existe pas, la fonction fopen retourne FALSE
    $file = @fopen("no_such_file", "r");

    // FALSE issu de fopen émettra une alerte et fera que l'on aura une boucle infinie ici
    while (!feof($file)) {
    }

    fclose($file);
    ?>

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open