Proměnné s proměnnými názvy
Někdy
je
vhodné
,
aby
se
názvy
proměnných
mohly
měnit
,
tj
.
aby
mohly
být
dynamicky
nastavovány
a
používány
.
Normální
proměnná
se
nastavuje
takovýmto
konstruktem
:
Proměnná
s
proměnným
názvem
vezme
hodnotu
proměnné
a
použije
ji
jako
název
proměnné
.
Ve
výše
uvedeném
příkladu
,
ahoj
lze
použít
jako
název
proměnné
uvedením
dvou
symbolů
dolaru
:
V
této
chvíli
byly
definovány
dvě
proměnné
a
byly
uloženy
do
stromu
symbolů
PHP
:
$a
s
obsahem
"
ahoj
"
a
$ahoj
s
obsahem
"světe
"
.
Proto
konstrukt
:
provede
přesně
totéž
jako
:
tedy
oba
vyprodukují
:
ahoj
světe
.
Při
použití
proměnných
s
proměnnými
názvy
s
poli
musíte
vyřešit
problém
víceznačnosti
.
Tj
.
když
napíšete
$$a[
1
]
,
parser
potřebuje
vědět
,
máte-li
na
mysli
použití
$a[1
]
jako
proměnné
nebo
chcete
$$a
jako
proměnnou
a
potom
index
[1
]
v
této
proměnné
.
Syntaxe
pro
řešení
této
víceznačnosti
je
${
$a[1]
}
pro
první
případ
a
${$a}[1
]
pro
druhý
.