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 :

explode et Cie


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    en retaite
    Inscrit en
    Mai 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : en retaite
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 164
    Points : 99
    Points
    99
    Par défaut explode et Cie
    Bonjour,

    En mysqli ,je fais une requete sur une table contenant des coordonnées de personnes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      $my_sql = "SELECT * FROM personnes ORDER BY nom, prenom ASC ";

    Puis je concatène les informations des personnes dans un fichier texte en les séparant par une virgule sur une seule ligne : $liste_destinataire (email, id_personne, nom, prenom) et ensuite avec '|' qui sépare entre chaque personne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $liste_destinataires = $liste_destinataires.$e_mail.",".$id_personne.",".$nom.",".$prenom."|";
    Comment puis-je extraire ensuite les différentes caractéristiques de chaque personne en seul tableau , du genre :


    indice e_mail id_personne nom prenom

    0 e_mail [0] id_personne [0] nom[0] prenom[0]
    1 e_mail [1] id_personne [1] nom[1] prenom[1]
    2 e_mail [2] id_personne [2] nom[2] prenom[2]
    3 e_mail [3] id_personne [3] nom[3] prenom[3]
    ......


    avec explode ??? et list ???

    Je n'y arrive pas.

    Merci de votre aide

    Cordialement.
    Maub

  2. #2
    Expert éminent Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 895
    Points : 6 651
    Points
    6 651
    Par défaut
    Pour aller au plus simple disons que tu as déjà charger le contenu du fichier dans une variable $str:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $str = 'patrick.robert@mail.fr,12,Patrick,Robert|fabrice.michel@mail.fr,15,Fabrice,Michel|jean-luc.martin@mail.fr,18,Jean-Luc,Martin';
     
    $result = [];
    foreach(explode('|', $str) as $ligne) {
        $result[] = explode(',', $ligne);
    }

  3. #3
    Membre régulier
    Homme Profil pro
    en retaite
    Inscrit en
    Mai 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : en retaite
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 164
    Points : 99
    Points
    99
    Par défaut
    merci beaucoup de ta réponse super rapide ....

    Je suis un peu perdu :

    a) par exemple, si je veux obtenir l'e_mail de la 5° personne de la liste, comment doisje nommer la variable ?
    echo "e_mail de la 5° personne = ".$result[e_mail][4] ?????????????

    b) par exemple, si je veux le prénom de la 8° personne de la liste, comment dois-je nommer la variable ?
    echo "prénom de la 8° personne = ".$result[prenom][7] ?????????????

    Merci de m'éclairer.
    Maub

  4. #4
    Expert éminent Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 895
    Points : 6 651
    Points
    6 651
    Par défaut
    Utiliser print_r() et/ou var_dump() permet de visualiser la structure d'une variable (utilise les entre des balises <pre></pre> si tu affiches sur une page html). De cette manière tu pourras trouver toi-même comment obtenir ce que tu souhaites.

  5. #5
    Membre régulier
    Homme Profil pro
    en retaite
    Inscrit en
    Mai 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : en retaite
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 164
    Points : 99
    Points
    99
    Par défaut
    Super.! J'ai compris.
    Merci beaucoup.
    Bonne soirée
    Maub

  6. #6
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    Je me suis fait une petite fonction qui peut aider pour le debug :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
      static public function debug($location, $var)
        {
            echo "<br/>".(is_string($location))?$location:''."<br/><pre>";
            var_dump($var);
            echo "</pre><br/>";
        }
    $location sert à afficher un texte qui peut aider (contenu du var_dump, nom du fichier et numéro de ligne, car quand y en a plein, il est dûr de se rappeler où on les a mis)

    Donc au lieu de coder var_dump($var) et 3 jours après ne plus savoir ce qui est affiché par ce var_dump ni où il est codé, je code debug('nom_variable nom_fichier numéro_ligne',$var);

  7. #7
    Membre régulier
    Homme Profil pro
    en retaite
    Inscrit en
    Mai 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : en retaite
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 164
    Points : 99
    Points
    99
    Par défaut
    Bonne idée.
    Je t'en remercie.

    Cordialement
    Maub

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

Discussions similaires

  1. explode en pure sql
    Par ecuyer dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 20/09/2005, 10h55
  2. Quel est l'equivalent de Explode de php ?
    Par reg11 dans le forum Langage
    Réponses: 4
    Dernier message: 29/06/2005, 15h50
  3. dlls & lib and cie
    Par Merfolk dans le forum C++Builder
    Réponses: 10
    Dernier message: 30/06/2004, 17h59
  4. Algorithme d'Avizienis et cie
    Par zul dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 08/11/2002, 23h19
  5. equivalent à explode?
    Par djridou dans le forum Langage
    Réponses: 3
    Dernier message: 28/08/2002, 11h01

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