Concaténation dans une boucle

Eléphant du PHP | 77 Messages

19 sept. 2005, 14:09

Bonjour,

mon problème est simple mais je reste bloqué.
je cherche à créer des variables dans une boucle :
$i = 0
while ($data = mysql_fetch_array($execution))
{
 $var + $i = $data["champs"]; // C'est là que ça coince
 $i++;
}
Merci. lulu.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

19 sept. 2005, 14:17

Salut, voila coment en crée a partir de ton exemple:
$i = 0
while ($data = mysql_fetch_array($execution))
{
    $i = $data["champs"];
    $i++;
}

apres tu auras 1-> champ1; 2-> champ2; ... ca ne suffirai pas de faire comme ça ?!

sinon pour concatèner -> $var.$i=$data["champs"];

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Mammouth du PHP | 568 Messages

19 sept. 2005, 14:21

Je ne saisis pas à quoi correspond ton $var, mais tu sembles donc vouloir créer autant de variable que de passage dans la boucle...

Pour celà, tu peux utiliser le système de création de variable dynamique, cad, utiliser des {} pour déterminer le nom de la variable.

exemple :
Si tu écrits ça :
${"abc"}=5;

Alors :
echo $abc;

Donneras :
5

Tu peux donc adapter en glissant des variables, comme :
${"abc".$i}=5;

Donc, si tu boucles avec une incrémentation du $i, tu auras comme variable : $abc1, $abc2, $abc3, etc...
Heddi s'est remis à développer pour lui même !
Martina Hingis - Étoile du Tennis
Heddi v. 2007

Eléphant du PHP | 77 Messages

19 sept. 2005, 14:58

Le $var correspond à un nom de variable quelconque. En gros, je voulais faire ça :
$i = 0
while ($data = mysql_fetch_array($execution))
{
  ${"var" . $i} = $data["champs"]; // C'est là que ça ne coince plus
  $i++;
}
Merci.

lulu.

Mammouth du PHP | 568 Messages

19 sept. 2005, 15:06

Donc, content pour toi que ça marche :wink:
Heddi s'est remis à développer pour lui même !
Martina Hingis - Étoile du Tennis
Heddi v. 2007