Lire un fichier texte de la ligne 10 à 25 par ex [Résolu]

Signaler
Messages postés
329
Date d'inscription
samedi 4 janvier 2003
Statut
Membre
Dernière intervention
29 mars 2015
-
cs_Anthomicro
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
-
    salut ...j'ai un petit problème ...j'essaye de récupérer ligne par ligne les données d'un fichier texte mais sans utiliser  une fonction
while (!feof($fp))
j'aimerai juste lire de la ligne n à n+10 par exemple
j'imagine qu'il faut utiliser ftell($fp); et
fseek($fp, $n);
mais je m'en sort pas :(
pouvez vous m'éclaiere un petit peu ?
merci bcp !
@++

5 réponses

Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut,

Tu peux essayer ça par exemple :

<?php
    if(file_exists('tonfichier.txt'))
   {
            $lignes = file('tonfichier.txt');
            $n       = 50;

            //on ne garde que les lignes n à n+10

            $lignes = array_slice($lignes, $n, $n+10);

            foreach($lignes AS $valeur)
           {
                     echo $valeur,'
';
           }
   }
?>

a +
<hr size="2" width="100%" /><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
Messages postés
329
Date d'inscription
samedi 4 janvier 2003
Statut
Membre
Dernière intervention
29 mars 2015
3
    salut !
merci pour té réponse :) ça marche plutôt bien ! mais j'ai peur que dans l'absolu ça risque de planter si on doit charger un fichier très gros étant donné que tout le fichier est chargé en mémoire (et donc lu) ...
je me demande si un accès par fseek ne serait pas plus éfficace ?
qu'en pensez vous ?
sinon déjà ça marche pas mal ça
++
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
fseek modifie la position du pointeur de fichier que tu auras auparavant ouvert, il faut donc lire de toute façon tout le fichier, il n'y a pas de solution miracle ;)

a +

<hr size="2" width="100%" /><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
Messages postés
329
Date d'inscription
samedi 4 janvier 2003
Statut
Membre
Dernière intervention
29 mars 2015
3
    lol ..ah dans ce cas ...
mais la lecture se fait sur le serveur en direct live c'est ça ? donc jusqu'à 4/5Mo ça ne devrai pas poser de pb non ?
@++
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
ça pourra poser problème si ça dépasse la taille mémoire maximum que tu peux allouer, définie dans le php.ini :)

a +

<hr size="2" width="100%" /><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>