Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/02/2012, 16h38   #1
Membre du Club
 
Homme jean
Inscription : octobre 2011
Messages : 95
Détails du profil
Informations personnelles :
Nom : Homme jean
Localisation : France, Corse (Corse)

Informations forums :
Inscription : octobre 2011
Messages : 95
Points : 52
Points : 52
Par défaut Créer un tableau à deux dimensions dynamique

Bonjour,

je souhaiterais lors de l'imbrication de deux boucles while avoir lors de la première, mon tableau à 1 dimension qui se remplit, et dans la foulée, la 2e dimension remplie avec le second while, c'est pas très clair, alors voici un exemple ;

Mon tableau final serait l'équivalent de ceci :

Code :
1
2
3
4
5
$tab=array(
   1=>array(1,2,3),
   2=>array(4,5,6),
   ...
)
Et moi j'ai essayé ceci :

Code :
1
2
3
4
5
6
7
8
9
10
11
 
$tab=array();
while($ligne=mysql_fetch_array($req)){
 
   array_push($tab,$ligne[id]); //1ère dimension
 
   while($ligne2=mysql_fetch_array($req2)){
      array_push($tab[ligne['id'], $ligne2['id']);
   }
 
}
et d'autres trucs, mais en vain. j'ai du mal à voir la procédure

edit : je viens de tester ça :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
$tab=array();
while($ligne=mysql_fetch_array($req)){

   array_push($tab,$ligne[id]); //1ère dimension

      $tab[$ligne['id']]=array();
   while($ligne2=mysql_fetch_array($req2)){
      array_push($tab[ligne['id'], $ligne2['id']);
   }

}
on dirait que ça fonctionne comme ça (déclarant la 2e dimension avant)
dev14 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2012, 10h32   #2
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 676
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

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

Informations forums :
Inscription : avril 2007
Messages : 3 676
Points : 5 417
Points : 5 417
Pour explication :
Citation:
Envoyé par php.net
Note: array_push() émettra une alerte si le premier argument n'est pas un tableau. Ceci diffère du comportement de $var[] où un nouveau tableau est créé.
En gros, il faut systématiquement initialiser la variable sur laquelle tu fais le push comme étant un tableau.
__________________
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)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/02/2012, 09h12   #3
Membre du Club
 
Homme jean
Inscription : octobre 2011
Messages : 95
Détails du profil
Informations personnelles :
Nom : Homme jean
Localisation : France, Corse (Corse)

Informations forums :
Inscription : octobre 2011
Messages : 95
Points : 52
Points : 52
Merci

c'est vrai que j'aurais dû lire la doc au lieu d'essayer dans tous les sens. merci
dev14 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h33.


 
 
 
 
Partenaires

Hébergement Web