Változó változók
Néha kényelmes változó változók használata. Ez olyan változó jelent, amelynek a nevét dinamikusan lehet beállÃtani. A normál változót Ãgy adunk értéket:
<?php
$a = 'hello';
?>
A változó változó veszi egy változó értékét, amelyet egy másik változó értékének tekinti. A fenti példában a hello, egy változó neveként használható, a $a elé még egy $-t Ãrva.
<?php
$$a = 'világ';
?>
Ekkor már két változó van a PHP szimbólumtáblájában: $a, amelynek tartalma "hello", és $hello, amelynek a tartalma "világ". Ennélfogva a következő programsor:
<?php
echo "$a ${$a}";
?>
pontosan ugyanazt csinálja, mintha ezt Ãrtuk volna:
<?php
echo "$a $hello";
?>
MindkettÅ‘ kiÃrja, hogy: hello világ.
Annak érdekében, hogy változó változókat tömbökkel együtt is használhassuk, fel kell oldani a következÅ‘ kétértelműséget. A $$a[1] kifejezés kiértékelésekor a feldolgozónak tudnia kell, hogy ez a $a[1] értékét tekintse a hivatkozott változó neveként, vagy $$a-t - és ekkor és ennek a tömbnek 1. indexű elemére történt a hivatkozás. Az elsÅ‘ esetben ${$a[1]}, mÃg a másodikban ${$a}[1] Ãrandó.
Jó, ha észben tartod, hogy változó változókat nem használhatsz a PHP szuperglobális tömbjeivel függvényekben és osztályeljárásokban.