Aller au contenu

feof()

Introduction à la fonction PHP feof()

La fonction feof() de PHP vérifie si la fin d'un fichier a été atteinte. Elle est couramment utilisée par les développeurs et les administrateurs système lors de la lecture ou de la manipulation de fichiers.

La fonction feof() accepte un paramètre : le pointeur de fichier que vous souhaitez vérifier. Dans cet article, nous discuterons de la syntaxe et des paramètres de la fonction feof(), ainsi que d'exemples d'utilisation.

Syntaxe

La syntaxe de la fonction feof() est la suivante :

Syntaxe PHP de feof()

php
bool feof ( $stream )
  • stream : le pointeur de fichier à vérifier
  • Retourne : booltrue si le pointeur de fichier est à la fin du fichier, false sinon.

Paramètres

La fonction feof() prend un paramètre obligatoire :

  1. $stream : Le pointeur de fichier que vous souhaitez vérifier. Ce paramètre doit être une ressource créée à l'aide de la fonction fopen() ou d'une fonction similaire.

Important : feof() ne retourne true qu'après qu'une fonction de lecture (comme fgets() ou fread()) ait tenté de lire au-delà de la fin du fichier. Le vérifier immédiatement après l'ouverture d'un fichier retournera toujours false. De plus, feof() peut ne pas fonctionner de manière fiable sur les flux non accessibles (comme les sockets réseau ou les pipes). Les fichiers se terminant par un caractère de nouvelle ligne peuvent également provoquer le déclenchement de feof() juste après la lecture de la dernière ligne, il est donc toujours recommandé de vérifier la valeur de retour de la fonction de lecture.

Exemples

Voici quelques exemples d'utilisation de la fonction feof() :

Exemple 1 : Vérifier si la fin d'un fichier a été atteinte après une lecture

L'exemple suivant lit la première ligne du fichier, puis vérifie si la fin a été atteinte :

Vérifier si la fin d'un fichier a été atteinte en PHP

php
<?php

$fileHandle = fopen("example.txt", "r");
// Read the first line
$firstLine = fgets($fileHandle);

// Now check if we've reached the end
if (feof($fileHandle)) {
  echo "End of file reached";
} else {
  echo "End of file not reached";
}
fclose($fileHandle);
?>

Exemple 2 : Modèle de boucle standard

L'exemple suivant utilise une boucle while sécurisée pour lire un fichier ligne par ligne jusqu'à la fin. Il inclut également une gestion d'erreur basique pour fopen() :

Boucle feof() standard en PHP

php
<?php

$fileHandle = fopen("example.txt", "r");
if ($fileHandle === false) {
  die("Error: Could not open file.");
}

while (($line = fgets($fileHandle)) !== false) {
  echo $line . "<br>";
}
fclose($fileHandle);
?>

Ce code affichera chaque ligne du fichier jusqu'à ce que la fin du fichier soit atteinte.

Conclusion

La fonction feof() est essentielle pour lire des fichiers en toute sécurité dans PHP. En comprenant son comportement et en utilisant les exemples ci-dessus, vous pouvez l'intégrer efficacement dans votre logique de gestion de fichiers. Pour toute question supplémentaire, n'hésitez pas à nous contacter.

Pratique

Quelle est l'utilité principale de la fonction 'feof()' en PHP ?

Trouvez-vous cela utile?

Aperçu dual-run — comparez avec les routes Symfony en production.