lire

Lecture d'un fichier ligne par ligne

Comment lire un fichier ligne par ligne en php

fichier php, php fichier, lire php, php lire ligne fichier, lire ligne php, php parcourir fichier, lire fichier texte php, php lire fichier ligne ligne, lecture php, un fichier en php, fgets php, php lecture fichier txt, fichier en ligne, lire en ligne, php a ligne

Date de publication : 2009-04-08 08:18:36

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