[RESOLU] créer un tableau dynamique en php

créer un tableau dynamique en php [RESOLU] - PHP - Programmation

Marsh Posté le 07-04-2006 à 16:10:17    

Bonjour,
 
je voudrais pouvoir créer un tableau dynamique comme l'indique le sujet du post ;)  
 
j'avais pensé faire comme sa:
 

Code :
  1. $nb=$data2["nb"];//nombre de case de mon tableau
  2.   while($nb!=0)
  3.   {
  4.    $tab=array( $nb =>"fin" );
  5.    $nb=$nb-1;
  6.   }


 
Mais cela n'a pas l'air de fonctionner.....
Je me tourne donc vers vous pour trouver de l'aide , merci d'avance

Message cité 2 fois
Message édité par hardrog le 07-04-2006 à 16:24:29
Reply

Marsh Posté le 07-04-2006 à 16:10:17   

Reply

Marsh Posté le 07-04-2006 à 16:19:03    

hardrog a écrit :


Je me tourne donc vers vous pour trouver de l'aide , merci d'avance


 
Tourne toi d'abord vers la doc de php, c'est n'importe quoi ta syntaxe.

Reply

Marsh Posté le 07-04-2006 à 16:23:09    

Code :
  1. while($nb!=0){
  2.   $tab[$nb] = 'fin';
  3.   $nb--;
  4. }


 
=> les bases, quand même


Message édité par naceroth le 07-04-2006 à 16:23:23
Reply

Marsh Posté le 07-04-2006 à 16:23:44    

euhh, non c'est vraiment bizzare ton truc. On utilise array, seulement une fois pour faire une declaration d'une variable de type array.
 
http://fr2.php.net/manual/fr/ref.array.php est ton amis avec push

Reply

Marsh Posté le 08-04-2006 à 15:52:25    

hardrog a écrit :

Bonjour,
je voudrais pouvoir créer un tableau dynamique comme l'indique le sujet du post ;)  


 
Ben en php, tes tableaux sont toujours dynamiques. T'as besoin d'un nouvel élément ben tu l'écris et hop, tu l'as.
 
Exemple 1:
Tu veux un tableau de valeurs connues à l'avance, tu utilises "array" qui est fait pour ça

$tab=array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);


Tu as maintenant accès à tout le tableau allant de "$tab[0]" à "$tab[9]"
 
Exemple 2:
Tu as une boucle et tu veux rajouter une nouvelle valeur dans ton tableau à chaque tour de boucle (ce qui est caractéristique d'un tableau dynamique), tu affectes juste ta variable avec des crochets sans argument, le php se chargera tout seul d'y mettre l'indice qui va bien

while (....)
{
   $tab[]=la valeur que tu veux;
}


Tu as maintenant accès à tout le tableau allant de "$tab[0]" à "$tab[...]"
 
En fait, le php est tellement souple que tu n'as même pas besoin de mettre des indices qui se suivent
$tab[0]=valeurX;
$tab[18]=valeurY;
Tu as maintenant accès à 2 variables indicées "[0]" et "[18]"
 
Cerise sur le gateau, tu n'es même pas obligé d'utiliser des indices numériques
$tab["nom"]=valeurX;
$tab["prenom"]=valeurY;
 
Evidemment, tu ne peux plus utiliser de "for (i=0; i < n; i++)" pour balayer ton tableau. C'est pour ça que le php t'offre l'instruction "foreach"

foreach ($tab as $key, $val)
     print $key." ".$val."<BR>";


A chaque tour de boucle, la clef de l'élément (ce qu'il y a dans les crochets) sera stockée dans "$key" et la valeur sera stockée dans "$val". Si la clef ne t'interesse pas, tu n'es pas obligé de mettre "$key," dans ton "foreach()"...
 
Avec tout ça, plus besoin de te préoccuper de la dynamique de ton tableau...


Message édité par Sve@r le 08-04-2006 à 15:54:53

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 02-06-2006 à 15:06:53    

Sve@r Ton explication est super bonne.  
 
Merci


---------------

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed