Je suis en train d'étudier en détail la question du traitement des fichiers en PHP et après avoir lu les pages de documentation sur les fonctions fgets() et feof(), je me pose quelques questions :
1) Dans la doc sur fgets(), on trouve : fgets() retourne la chaîne lue jusqu'à la longueur length - 1 octet depuis le pointeur de fichier handle , ou bien la fin du fichier, ou une nouvelle ligne (qui inclut la valeur retournée), ou encore un EOF (celui qui arrive en premier).
D'où ma première question : à quoi bon utiliser feof() pour savoir si on atteint la fin du fichier avec fgets() ? Exemple typique :
Code : Tout sélectionner
while (!feof($f)) // on parcours le fichier
{
$ligne = fgets($f); // lecture d'une ligne
echo trim($ligne); // traitement de la ligne
}
Code : Tout sélectionner
while (!feof($f)) // On parcours le fichier
{
$ligne = fgets($f); // Lecture d'une ligne
echo trim($ligne)."<br />"; // écriture de la ligne lue
echo "X<br />"; // écriture d'un caractère quelconque qui devrait apparaitre une fois de trop d'après ce que j'ai compris.
}
fclose($f);