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 :

boucles foreach imbriqué (tableau 3 colonnes)


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 227
    Points : 65
    Points
    65
    Par défaut boucles foreach imbriqué (tableau 3 colonnes)
    Bonjour,

    Je dispose de 3 array.

    Pour faire simple voici a quoi il ressemble:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $array1 = array ("1","2","3")
    $array2 = array ("a","b","c")
    $array1 = array ("A","B","C")
    Je souhaiterai mettre en forme ces données (3 array) sous forme de tableau de 3 colonnes à savoir:

    1 a A
    2 b B
    3 c C

    Comment faire pour remplir les colonnes, j'ai testé avec 3 boucles foreach imbriqué mais ca me donne n'importe quoi.

    Avez vous une idée?

    Merci par avance

  2. #2
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Salut,
    Si tes tableaux sont de meme grandeurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
     
    foreach($Tab1 as $K=>$V)
       $NewT[$K]=array($Tab1[$K], $Tab2[$K], $Tab[$K]);

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 227
    Points : 65
    Points
    65
    Par défaut
    Hello et merci tout d'abord.

    Oui ils sont tous les trois de même grandeurs.

    Par contre pour l'affichage des 3 colonnes je procède comment ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <tr>
        <td></td>
        <td></td>
        <td></td>
      </tr>

  4. #4
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    foreach($NewT as $K=>$V){
         echo "couple Numero : ".$K."--> (".$V[0].",".$V[1].",".$V[2].")<br/>";
    code non testé... Dis moi si tu as un souchi

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 227
    Points : 65
    Points
    65
    Par défaut
    Euh j'ai déjà un soucis lol,

    Ca ne fonctionne pas
    Et j'aimerai incorpérer les données des arrays dans un tableau à 3 colonnes.

  6. #6
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Si $NewT exist alors a priori le code que je t'ais passer dois fonctionner...
    Precise les erreurs sinon ....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    echo "<table>";
    foreach($NewT as $K=>$V){
         echo "<tr><td>couple Numero : ".$K."</td><td>".$V[0]."</td><td>".$V[1]."</td><td>".$V[2]."</td></tr>";
     
    echo "</table>";
    euh.... c'est ca que tu appelle un tableau ?

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 227
    Points : 65
    Points
    65
    Par défaut
    Oui tout à fait c'est ca que j'appelle un tableau.

    Je n'ai pas d'erreur: ça me donne pour le moment:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    couple Numero : 	Array	Array
    Il y a donc un problème de déclaration.
    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     $Tab1[$K] = array ('a', 'b', 'c');
    $Tab2[$K] = array ('1', '2', '3');
    $NewT[$K]=array($Tab1[$K], $Tab2[$K]);
     
     
    echo "<table>";
    foreach($NewT as $K=>$V){
         echo "<tr><td>couple Numero : ".$K."</td><td>".$V[0]."</td><td>".$V[1]."</td></tr>";}
     	echo "ici <br/>";
    echo "</table>";
    Voili voilou

  8. #8
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Si on récapitule, ça donne quelque chose comme ça :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    //tableaux de départ :
    $array1 = array ("1","2","3");
    $array2 = array ("a","b","c");
    $array3 = array ("A","B","C");
     
    //construction d'un tableau récapitulatif (en supposant que tous les tableaux font la même taille)
    $n = count($array1); //taille du tableau
    $tableau = array();
    for($i=0; $i<$n; $i++)
    {
    	$tableau[$i] = array( $array1[$i], $array2[$i], $array3[$i]);
    }
     
    //lecture du nouveau tableau dans une table html 
    echo '<table>';
    foreach ($tableau as $ligne)
    {
    	echo '<tr>';
    	foreach($ligne as $case)
    	{
    		echo '<td>'.$case.'</td>';
    	}
    	echo '</tr>';
    }
    echo '</table>';
    ou si le tableau de stockage ne nous intéresse pas :
    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
    17
    18
    //tableaux de départ :
    $array1 = array ("1","2","3");
    $array2 = array ("a","b","c");
    $array3 = array ("A","B","C");
     
    //en supposant que tous les tableaux font la même taille
    $n = count($array1); //taille du tableau
     
    echo '<table>';
    for($i=0; $i<$n; $i++)
    {
    	echo '<tr>';
    	echo '<td>'.$array1[$i].'</td>';
    	echo '<td>'.$array2[$i].'</td>';
    	echo '<td>'.$array3[$i].'</td>';
    	echo '</tr>';
    }
    echo '</table>';
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 227
    Points : 65
    Points
    65
    Par défaut
    Merci beaucoup pour votre aide j'ai compris ce bout de code

    Bonne soirée

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

Discussions similaires

  1. Boucle foreach sur tableau devenu inaccessible
    Par Lhtldrn dans le forum C#
    Réponses: 1
    Dernier message: 08/07/2012, 11h23
  2. Comment créer un tableau dans une boucle foreach ?
    Par razily dans le forum Langage
    Réponses: 4
    Dernier message: 30/04/2012, 11h25
  3. [Smarty] objet foreach: accès tableau associatif imbriqué
    Par noobC dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 11/11/2009, 12h48
  4. Boucles foreach imbriquées: affichage non désiré
    Par renaud26 dans le forum Langage
    Réponses: 2
    Dernier message: 16/04/2009, 08h36
  5. boucles foreach imbriquées!
    Par jalam dans le forum C#
    Réponses: 12
    Dernier message: 16/07/2007, 18h08

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