IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Lire un fichier txt par la fin


Sujet :

Langage PHP

  1. #1
    Débutant
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    1 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 125
    Points : 704
    Points
    704
    Par défaut Lire un fichier txt par la fin
    Bonjour,

    J'arrive à le lire du début vers la fin mais pas l'inverse.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?php
    $fp = fopen("logs/log.txt","r"); 
    $page = "";
    while (!feof($fp))
    {
    		 $page .= fgets($fp, 4096);
    		 $page .= "<br>";
    }
    echo $page;
    ?>
    Comment faire l'inverse?

    Merci

  2. #2
    regseb
    Invité(e)
    Par défaut
    Je ne crois pas qu'il existe de méthode pour lire un fichier à l'envers.

    Mais le code suivant affiche le fichier inversé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $fp = fopen ('logs/log.txt','r');
    $page = '';
    while (!feof ($fp))
        $page = fgets ($fp, 4096) . $page . '<br />';
    fclose ($fp);
    echo $page;
    ?>

  3. #3
    Débutant
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    1 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 125
    Points : 704
    Points
    704
    Par défaut
    Citation Envoyé par regseb Voir le message
    Je ne crois pas qu'il existe de méthode pour lire un fichier à l'envers.

    Mais le code suivant affiche le fichier inversé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $fp = fopen ('logs/log.txt','r');
    $page = '';
    while (!feof ($fp))
        $page = fgets ($fp, 4096) . $page . '<br />';
    fclose ($fp);
    echo $page;
    ?>
    Ce code ne fonctionne pas.
    Il affiche le fichier de haut en bas et non pas de bas en haut...

  4. #4
    regseb
    Invité(e)
    Par défaut
    Citation Envoyé par afrodje Voir le message
    Ce code ne fonctionne pas.
    Il affiche le fichier de haut en bas et non pas de bas en haut...
    J'avais fait une erreur dans le script, il faut inverser '<br />' et $page.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $fp = fopen ('logs/log.txt','r');
    $page = '';
    while (!feof ($fp))
        $page = fgets ($fp, 4096) . '<br />' . $page;
    fclose ($fp);
    echo $page;
    ?>
    Pour être plus clair, si le fichier contient :
    tu veux afficher :

  5. #5
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Vite fait, sans tester, j'aurais bien fait un truc de ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $lines = array_reverse( file ('logs/log.txt', FILE_TEXT) );
    foreach($lines as $line) print $line;

  6. #6
    Débutant
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    1 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 125
    Points : 704
    Points
    704
    Par défaut
    Citation Envoyé par regseb Voir le message
    J'avais fait une erreur dans le script, il faut inverser '<br />' et $page.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $fp = fopen ('logs/log.txt','r');
    $page = '';
    while (!feof ($fp))
        $page = fgets ($fp, 4096) . '<br />' . $page;
    fclose ($fp);
    echo $page;
    ?>
    Pour être plus clair, si le fichier contient :
    tu veux afficher :
    Cela fonctionne.

    Citation Envoyé par s.n.a.f.u Voir le message
    Vite fait, sans tester, j'aurais bien fait un truc de ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $lines = array_reverse( file ('logs/log.txt', FILE_TEXT) );
    foreach($lines as $line) print $line;
    Il n'y a rien qui s'affiche...


    Merci en tout ca à vous 2.

  7. #7
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Citation Envoyé par afrodje Voir le message
    Il n'y a rien qui s'affiche...
    Tu as essayé de modifier le code (au moins le nom du fichier), parce que s'il est vrai que j'ai fais ça à la va vite sur un passage éclair, je pense toujours que ma solution est correcte, au moins sur le plan fonctionnel.

  8. #8
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    s.n.a.f.u je viens de tester ton code dans mon programme et il marche très bien. Merci ça fait quelques jours que j'essayais d'arriver à ce résultat =)

  9. #9
    Débutant
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    1 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 125
    Points : 704
    Points
    704
    Par défaut
    Citation Envoyé par s.n.a.f.u Voir le message
    Tu as essayé de modifier le code (au moins le nom du fichier), parce que s'il est vrai que j'ai fais ça à la va vite sur un passage éclair, je pense toujours que ma solution est correcte, au moins sur le plan fonctionnel.
    Exact.
    Il me manque tout simplement un $lines = array();

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lire un fichier txt ligne par ligne
    Par storm85 dans le forum Général Python
    Réponses: 20
    Dernier message: 19/10/2010, 22h15
  2. Lire un fichier txt champ par champ
    Par than24 dans le forum EDI et Outils pour Java
    Réponses: 1
    Dernier message: 23/02/2010, 10h59
  3. Comment lire un fichier txt ligne par ligne ?
    Par Chikh001 dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 20/11/2007, 10h27
  4. lire un fichier .txt ligne par ligne
    Par 7awela dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 07/06/2007, 18h02
  5. Lire un fichier txt par http (C sous Linux)
    Par sleg dans le forum Réseau
    Réponses: 4
    Dernier message: 18/10/2005, 12h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo