Variáveis variáveis

As vezes é conveniente poder trabalhar com variáveis variáveis . Isto é , nomes de variáveis que pode ser criadas e utilizadas dinamicamente . Uma variável normal é criada numa instrução como :




Uma variável variável pega o valor de uma variável e a trata como o nome de uma variável . No exemplo acima , hello pode ser utilizada como o nome de uma variável utilizando dois sinais de cifrão :




Neste ponto , duas variáveis foram definidas e preservadas na árvore de símbolos do PHP : $a contendo " hello " e $hello contendo "world " . Da mesma forma , esta instrução :




produz a mesma saida que :




no caso : hello world .

Para poder utilizar variáveis variáveis com arrays , você precisa resolver um problema de ambigüidade . Assim , se você escrever $$a[ 1 ] então o interpretador pode entender que você quer usar $a[1 ] como uma variável ou que você quer usar $$a como uma variável e [1 ] como o índice dessa variável . A sintaxe para resolver essa ambigüidade é ${ $a[1] } para o primeiro caso e ${$a}[1 ] para o segundo .

Atenção

Verifique que variáveis variáveis não podem ser utilizadas com os novos arrays superglobais . Isto significa que você não pode fazer coisas como ${ $_GET } . Se você está procurando uma maneira de manipular as superglobais como as antigas HTTP_*_VARS , você deve tentar referenciá-las .