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 :

Récupérer un Array avec étiquette enregistré dans un fichier .txt [PHP 5.3]


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2011
    Messages : 26
    Points : 16
    Points
    16
    Par défaut Récupérer un Array avec étiquette enregistré dans un fichier .txt
    Bonjour,

    Pour faire simple, j'aimerais transformer:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    (.txt)
     
    Titre 1, Réponse 1
    Titre 2, Réponse 2
    Les bananes, du chocolat
    En:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    (.php)
     
    Array (
     
    [Titre 1] => Réponse 1
    [Titre 2] => Réponse 2
    [Les bananes] => du chocolat
     
    )
    Mais la seule chose à laquelle j'arrive en utilisant la fonction file(mon_fichier.txt), c'est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    [0] => Titre 1, Réponse 1
    [1] => Titre 2, Réponse 2
    [3] => Les bananes, du chocolat
    Merci énormément de votre aide précieuse!
    Maxime.

  2. #2
    Expert éminent
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 146
    Points : 9 386
    Points
    9 386
    Par défaut
    Un premier explode() sur le retour à la ligne et un second sur la virgule ferra l'affaire pour séparer les données.
    Ensuite tu n'as plus qu'à boucler correctement pour former ta structure.

    « Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur. »
    « Le watchdog aboie, les tests passent »

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2011
    Messages : 26
    Points : 16
    Points
    16
    Par défaut
    Pourquoi pas! Merci

    Mais comment faire un explode avec comme "delimiter" un retour à la ligne?
    Merci!

  4. #4
    Expert éminent
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 146
    Points : 9 386
    Points
    9 386
    Par défaut
    \n c'est le caractère de retour à la ligne

    « Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur. »
    « Le watchdog aboie, les tests passent »

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2011
    Messages : 26
    Points : 16
    Points
    16
    Par défaut
    Ouai pas bête .

    Merci, ca semble bien rouler!
    Je mets en résolu!

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2011
    Messages : 26
    Points : 16
    Points
    16
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    $array_fichier=file('setting.txt');
    $count = count($array_fichier);
     
    $i = 0;
     
    While($i < $count) {
     
    		$str = $array_fichier[$i];
     
    		$parts = explode(",", $str);
     
    		$num_compte[$i] = $parts[0];
    		$name_compte[$i] = $parts[1];
     
    		$i++;
    }

  7. #7
    Expert éminent
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 146
    Points : 9 386
    Points
    9 386
    Par défaut
    Ou mieux encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $lignes = file('setting.txt');
    $tab = array();
    foreach($lignes as $ligne){
      $mots = explode(',', $ligne);
      if( count($mots) == 2 ){
        $tab[$mots[0]] = $mots[1];
      }
    }
    A moins que tu ais changé de structure en cours de route.

    « Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur. »
    « Le watchdog aboie, les tests passent »

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

Discussions similaires

  1. l'enregistrement dans un fichier .txt
    Par seksaki dans le forum VB.NET
    Réponses: 4
    Dernier message: 02/03/2009, 18h07
  2. Réponses: 2
    Dernier message: 02/09/2008, 14h17
  3. Réponses: 1
    Dernier message: 28/11/2007, 18h54
  4. Réponses: 1
    Dernier message: 05/12/2006, 17h47
  5. Réponses: 4
    Dernier message: 10/10/2006, 12h20

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