Teddy_le_gnein
Messages postés36Date d'inscriptionvendredi 28 avril 2006StatutMembreDernière intervention31 janvier 2011
-
4 déc. 2008 à 15:41
Teddy_le_gnein
Messages postés36Date d'inscriptionvendredi 28 avril 2006StatutMembreDernière intervention31 janvier 2011
-
9 déc. 2008 à 13:56
Hello tous le monde.
je reviens à la charge avec mes array incrémentés...
Comme la dernière fois je suis persuadé qu'il y a une solution simple mais que j'utilise une mauvaise syntaxe.
alors voilà, je créé un tableau contenant un texte, ce texte est lui meme un tableau contenant plusieurs users. et pour finir, chaque user sonts autant de tableau contenant des infos...
Je n'arrive pas à sortir la varriable user autrement qu'en array...
voici un illustration de mon blabla:
*text1:
°user1
-info a
-info b
°user2
-info c
°user3
-info d
*text2:
°user1
-info x
-info y
°user4
-info z
*text3
.... ...... ..............
voici mon code de création de l'array:
$array[$text][$user][] = $info;
lorseque je sort un :
echo "";
print-r ($array);
echo "
";
je voi bien ma structure comme je la désire.
mais quand je veux exploiter ces donnée, je n'arrive qu'à sortir text et info... user me renvoi array...
que dois-je ecrire pour pouvoir afficher mon user?
code d'exploitation de l'array créé:
foreach($array as $text => $val)
{
//initialisation de $listeinfo
$listeinfo = "";
//initialisation de $listeuser
$listeuser = "";
//parcour des differents user d'après leur texte correspondant
foreach( $val as $user)
{
//création de la variable des affaires de l'user
//$listeuser = $listeuser.'- '.$user.'
';
//parcour des differentes infos par user contenu dans l'array
foreach( $user as $info )
{
//création de la variable des affaires de l'user
$listeaffaire = $listeaffaire.'- '.$affaire.'
';
}
}
echo "<hr>";
echo $listeaffaire;
echo "
".$listeuser;
}
A voir également:
Exploiter une variable inconnue dans un array incrémenté
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 4 déc. 2008 à 20:29
Hello,
ton erreur est simple.
$aTab = array(
'texte1' => array('toto' =>array('infos toto 1', 'infos toto 2'), 'titi' =>array('infos titi1', 'infos titi 2')),
'texte2' => array('tata' => array('infos tata 1', 'infos tata 2'), 'tutu' => array('infos tutu 1', 'infos tutu 2')),
);
foreach($aTab as $sClefTexte=> $aUsers)
Là, tu as bien compris, curieusement : $sClefTexte contient au 1er tour de boucle 'texte1', puis 'texte2'. Que contient $aUsers?
ben la valeur correspondant à la clef $sClefTexte, donc :
array('toto' => 'infos toto', 'titi' => 'infos titi')
puis
array('tata' => 'infos tata', 'tutu' => 'infos tutu')
Du coup, 2ème boucle:
foreach($aUsers as $sClefUser => $aInfosUser)
Là, $sClefUser contiendra au 1er tour du 1er tour (si j'ose dire) 'toto', au 2d tour du 1er tour 'titi', au 1er tour du 2d tour 'tata' et enfin au 2d tour du 2d tour 'tutu'.
Et $aInfosUser: iencore un tableau. Donc re boucle :
foeach($aInfosUser as $iClef => $sInfo)
$iClef est alors l'index de ton tableau d'infos pour chaque utilisateur (0, 1, 2 etc...)
$sInfo contient la variable texte contenant une fino de l'utilisateur.
Toi, tu utilises $aInfosUsercomme une variable scalaire (une chaîne en l'occurence). Or, c'est un tableau.
Teddy_le_gnein
Messages postés36Date d'inscriptionvendredi 28 avril 2006StatutMembreDernière intervention31 janvier 2011 4 déc. 2008 à 15:47
oups...
j'ai oublier de traduire toutes les variables...
foreach($array as $text => $val)
{
//initialisation de $listeinfo
$listeinfo = "";
//initialisation de $listeuser
$listeuser = "";
//parcour des differents user d'après leur texte correspondant
foreach( $val as $user)
{
//création de la variable des affaires de l'user
//$listeuser = $listeuser.'- '.$user.'
';
//parcour des differentes infos par user contenu dans l'array
foreach( $user as $info )
{
//création de la variable des affaires de l'user
$listeinfo = $listeinfo.'- '.$info.'
';
}
}
echo "<hr>";
echo $listeinfo;
echo "
".$listeuser;
}
voilà qui est plus correcte.
ainsi, le $listeinfo me sort bien un listing des infos, mais le $listeuser m'envoi un listing de valeurs non définies "array".
y'a il un moyen simple d'avoir ma liste d'user ou faut-il redéfinire la méthode d'exploitation du tableau avec les foreach?
Teddy_le_gnein
Messages postés36Date d'inscriptionvendredi 28 avril 2006StatutMembreDernière intervention31 janvier 2011 8 déc. 2008 à 10:23
Désolé de ne répondre que maintenant, et merci de ta réactivité et ton aide.
Je vois ce que tu veux dire, et je vais tenter ça dès que j'en aurai l'occasion...
Le problème c'est que je dois battailler sur plusieurs fronts et j'ai un autre truc sur les bras en ce moment...
Je validerai ou te ferais part de mes observations dès que je pourrai m'attaquer à nouveau à ce code.
merci, et à très bientôt...
enfin j'espère parceque mon bout de code commence aussi à urger...
Pfff... la gestion des prioritées ici c'est une horreure.
Teddy_le_gnein
Messages postés36Date d'inscriptionvendredi 28 avril 2006StatutMembreDernière intervention31 janvier 2011 8 déc. 2008 à 10:23
Désolé de ne répondre que maintenant, et merci de ta réactivité et ton aide.
Je vois ce que tu veux dire, et je vais tenter ça dès que j'en aurai l'occasion...
Le problème c'est que je dois battailler sur plusieurs fronts et j'ai un autre truc sur les bras en ce moment...
Je validerai ou te ferais part de mes observations dès que je pourrai m'attaquer à nouveau à ce code.
merci, et à très bientôt...
enfin j'espère parceque mon bout de code commence aussi à urger...
Pfff... la gestion des prioritées ici c'est une horreure.
Vous n’avez pas trouvé la réponse que vous recherchez ?