lire

Lecture d'un fichier ligne par ligne

Comment lire un fichier ligne par ligne en php

php fichier, ligne fichier php, lire php, php lire ligne fichier, php lire fichier ligne, lire ligne php, php lire fichier, fichier php lire, lire fichier php, php fichier lire, fichier php, php parcourir fichier, ouvrir fichier php, php lire ligne, un fichier php

En php je connais deux méthodes pour lire un fichier ligne par ligne. La première utilise la fonction file, et la seconde utilise la fonction fgets. Voici deux exemples qui illustrent ces différentes méthodes :

Lecture d'un fichier avec file

La fonction file permet de lire un fichier ligne par ligne, cependant il est préférable de l'utiliser avec précaution sur des fichiers volumineux car elle charge tout le contenu du fichier en mémoire et peut entrainer une erreur fatale out of memory.


<?php
/*Ouvre le fichier et retourne un tableau contenant une ligne par élément*/
$lines = file('/path/file.txt');
/*On parcourt le tableau $lines et on affiche le contenu de chaque ligne précédée de son numéro*/
foreach ($lines as $lineNumber => $lineContent)
{
echo $lineNumber,' ',$lineContent;
}
?>

Lecture d'un fichier avec fgets

Contrairement à file, l'utilisation de fgets pour la lecture d'un fichier permet de travailler sur des gros fichiers car elle ne charge en mémoire qu'une seule ligne à la fois.


<?php
/*Ouverture du fichier en lecture seule*/
$handle = fopen('/path/file.txt', 'r');
/*Si on a réussi à ouvrir le fichier*/
if ($handle)
{
/*Tant que l'on est pas à la fin du fichier*/
while (!feof($handle))
{
/*On lit la ligne courante*/
$buffer = fgets($handle);
/*On l'affiche*/
echo $buffer;
}
/*On ferme le fichier*/
fclose($handle);
}
?>

Références

- Manuel de file
- Manuel de fgets

Image : Paulbence

 
 

b1n@sp1n