Les variables dynamiques

Il est pratique d ' avoir parfois des noms de variables qui sont variables . C ' est-à-dire un nom de variable qui est affectée et utilisée dynamiquement . Une variable classique est affecté avec l ' instruction suivante :

 
?php

 
$a

 
=

 
"

 
bonjour"

 
;

 
?



Une variable dynamique prend la valeur d' une variable et l'utilise comme nom d 'une autre variable . Dans l' exemple ci-dessous , bonjour peut être utilisé comme le nom d'une variable en utilisant le "$$ " précédent la variable . C ' est-à-dire

 
?php

 
$$a

 
=

 
"

 
monde"

 
;

 
?



A ce niveau , deux variables ont été définies et stockées dans l' arbre des symboles PHP : $a avec comme valeur "bonjour " et $bonjour avec comme valeur "monde " . Alors , l ' instruction




produira le même affichage que :

 
?php

 
echo

 
"

 
$a

 
$bonjour"

 
;

 
?



c ' est-à-dire : bonjour monde .

Afin de pouvoir utiliser les variables dynamiques avec les tableaux , vous avez à résoudre un problème ambigu . Si vous écrivez $$a[ 1] , le parseur a besoin de savoir si vous parler de la variable qui a pour nom $a[1 ] ou bien si vous voulez l'index [1 ] de la variable $$a . La syntaxe pour résoudre cette ambiguïté est la suivante : ${ $a[1] } pour le premier cas , et ${$a}[1 ] pour le deuxième .