[PHP][resolu] trou de mémoire sur util du $$ - oups... la honte

:hello: tous

arf ! trop de chaleur ? Voilà que je ne me souviens plus de l’utilisation du double dollars
Typiquement, j’ai 4 variables que je veux afficher les une après les autres grâce à mon for.


$a1 = "toto";
$a2 = "titi";
$a3 = "tutu";
$a4 = "tata";

for ( $i=0; $i<5; $i++ )
{
	echo ???
}

Ben voilà… je sais plus me servir du $$ dans ce cas là :sarcastic:
La honte… je m’en suis servi des paquets de fois, et impossible de remettre la main dessus.

Donc dans mon echo… je mets quoi pour qu’il affiche ma variable $ax en fonction de la valeur de $i (donc de 1 à 4) ?
Pinaize… me souviens plus :paf:

Merci d’avance :jap:
Je reviendrais plus jamais pour des questions pareilles après, promis lol :lol:

echo $a.$i;

fonctionne.

:non: ça fonctionne pas ça, me prend pas pour un lapin de 3 semaines non plus :heink:

j’ai trouvé finallement :paf:

$x = ‘a’.$i ;

et donc…

echo $$x;

Le lapin, il a testé son code et ça marche ^^

Ca ne peux pas marcher, ce que tu fais c’est une concaténation de chaînes.

Sans compter que tu te tapes un beau notice parce que ton $a il existe nul part

Testé sous php 4.3, j’ai encore la source… j’ai testé avec un print_r($a.$i) et ça marche…

<?php
$a1 = "toto";           
$a2 = "titi";           
$a3 = "tutu";           
$a4 = "tata";           
                        
for ( $i=0; $i<5; $i++ )
{                       
print_r($a.$i);
}                       
?>

Résultat afficher :
01234

rooh je savais pas qu’on pouvait faire ça ^^ thx pour l’info

Moi j’aurais fait :


$a[1] = 'toto';
$a[2] = 'tata';
$a[3] = 'titi';
$a[4] = 'tete';

for( $i = 0; $i < 5; $i++ ) {
 echo $a[$i];
}

:ane:

Vouip, c’est une autre solution, mais je suis un vilain tetu et je voulais pas un array mais utiliser mon double $$ :paf:

Oh non, la honte !! :ouch:
J’ai fait mes tests avec $var1 = 0, $var2 = 1, etc. :whistle:

–> Je sors ^^