Discussion:
Comment parcourir une array bidimensionnelle ?
(trop ancien pour répondre)
Jean-Francois Ortolo
2007-10-16 18:37:30 UTC
Permalink
Bonjour

Je sais comment parcourir une array à une dimension, de manière à
avoir les clés et les valeurs de l'array. Il suffit de faire:

while(list($key, $value) = each($array)) {
// Utilisation des valeurs
// $key et $value ,
// qui sont les clés et valeurs
// de l'array $array.
}


Mais... Comment faire pour les arrays à deux dimensions ?

On a une array $array[][] à deux dimensions, ayant des clés
alphabétiques, par exemple:

$array["ATHAL"]["QUINTE_ORDRE"] = $value1_1;
$array["ATHAL"]["QUINTE_DESORDRE"] = $value_1_2;
$array["PASCA"]["QUINTE_ORDRE"] = $value2_1;
$array["PASCA"]["QUINTE_DESORDRE"] = $value2_2;

Cette array $array a donc deux dimensions, et on veut disposer des
deux clés , et des valeurs de l'array en fonction des deux clés, en
parcourant $array de façon exhaustive.

Comment faire ?

Merci beaucoup de vos réponses.

Bien à vous.

Amicalement.

Jean-François Ortolo
--
Visitez mon site gratuit donnant des Statistiques
et des Historiques Graphiques sur les Courses de Chevaux:
http://www.ortolojf-courses.com
P'tit Marcel
2007-10-16 20:22:47 UTC
Permalink
Post by Jean-Francois Ortolo
Je sais comment parcourir une array à une dimension, de manière à
Mais... Comment faire pour les arrays à deux dimensions ?
Ben, on fait deux boucles imbriquées !

Pour reprendre ta syntaxe à base de each :

while(list($key1, $sub_array) = each($array)) {
while(list($key2, $value) = each($sub_array)) {

// Utilisation des variables
// $key1 et $key2
// qui sont les clés
// de l'array $array
// et de $value, qui est la valeur
// correspondant à ce couple de clés
// attention, pour mettre à jour,
// il faut utiliser $array et non $sub_array
}
}


eça
--
P'tit Marcel
Mihamina Rakotomandimby
2007-10-16 20:22:47 UTC
Permalink
Post by Jean-Francois Ortolo
Mais... Comment faire pour les arrays à deux dimensions ?
On a une array $array[][] à deux dimensions, ayant des clés
$array["ATHAL"]["QUINTE_ORDRE"] = $value1_1;
$array["ATHAL"]["QUINTE_DESORDRE"] = $value_1_2;
$array["PASCA"]["QUINTE_ORDRE"] = $value2_1;
$array["PASCA"]["QUINTE_DESORDRE"] = $value2_2;
foreach($array as $k => $v)
{
foreach($v as $a => $b)
{
...
}
}

Que je sache...
Bruno Desthuilliers
2007-10-17 07:59:33 UTC
Permalink
Post by Jean-Francois Ortolo
Bonjour
Je sais comment parcourir une array à une dimension, de manière à
while(list($key, $value) = each($array)) {
// Utilisation des valeurs
// $key et $value ,
// qui sont les clés et valeurs
// de l'array $array.
}
Heu... Il serait peut-être temps d'apprendre à utiliser foreach ?

foreach($dict as $k=>$v) {
echo "$k=>$v<br />\n";
}
Post by Jean-Francois Ortolo
Mais... Comment faire pour les arrays à deux dimensions ?
On a une array $array[][] à deux dimensions, ayant des clés
$array["ATHAL"]["QUINTE_ORDRE"] = $value1_1;
$array["ATHAL"]["QUINTE_DESORDRE"] = $value_1_2;
$array["PASCA"]["QUINTE_ORDRE"] = $value2_1;
$array["PASCA"]["QUINTE_DESORDRE"] = $value2_2;
Cette array $array a donc deux dimensions, et on veut disposer des
deux clés , et des valeurs de l'array en fonction des deux clés, en
parcourant $array de façon exhaustive.
Comment faire ?
foreach($extern as $xk=>$intern) {
foreach($intern as $k=>$v) {
echo "$xk=>$k=>$v<br />\n";
}
}
Thomas Mlynarczyk
2007-10-17 07:59:33 UTC
Permalink
Post by Jean-Francois Ortolo
Mais... Comment faire pour les arrays à deux dimensions ?
Il y a foreach:

foreach ( $aArray as $sKey1 => $a )
{
foreach ( $a as $sKey2 => $xValue )
{
echo "\$aArray['$sKey1']['$sKey2'] = $xValue\n";
}
}
--
C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!
(Coluche)
Jean-Francois Ortolo
2007-10-17 07:59:33 UTC
Permalink
Bonjour

Merci beaucoup à P'tit Marcel et Monsieur Rakotomandimby
pour vos réponses, qui m'apportent la pleine solution
à mon problème.

Maintenant, je vais m'en retourner ( halas ! )
à mon programme de statistiques sur les pronostics
de mon site partenaire.

Merci beaucoup beaucoup de vos réponses.

Bien à vous.

Amicalement.

Jean-François Ortolo
--
Visitez mon site gratuit donnant des Statistiques
et des Historiques Graphiques sur les Courses de Chevaux:
http://www.ortolojf-courses.com
Continuer la lecture sur narkive:
Loading...