The $вар (единичен долар) е нормална променлива с име var, която съхранява всяка стойност като низ, цяло число, float и т.н.
The $$ беше (double dollar) е референтна променлива, която съхранява стойността на променливата $ в нея.За да разберем по-добре разликата, нека видим няколко примера.
Пример 1
<?php $x = 'abc'; $$x = 200; echo $x.' <br/>'; echo $$x.' <br>'; echo $abc; ?>
Изход:
В горния пример сме присвоили стойност на променливата х като абв . Стойност на референтната променлива $$x е назначен като 200 .
Сега отпечатахме стойностите $x, $$x и $abc .
Пример2
<?php $x='U.P'; $$x='Lucknow'; echo $x. ' <br>'; echo $$x. ' <br>'; echo 'Capital of $x is ' . $$x; ?>
Изход:
В горния пример сме присвоили стойност на променливата х като U.P . Стойност на референтната променлива $$x е назначен като Лакнау.
Сега отпечатахме стойностите $x, $$x и низ.
Пример3
<?php $name='Cat'; ${$name}='Dog'; ${${$name}}='Monkey'; echo $name. ' <br>'; echo ${$name}. ' <br>'; echo $Cat. ' <br>'; echo ${${$name}}. ' <br>'; echo $Dog. ' <br>'; ?>
Изход:
В горния пример сме присвоили стойност на името на променливата котка . Стойност на референтната променлива ${$name} е назначен като куче и ${${$name}} като Маймуна .
Сега отпечатахме стойностите като $name, ${$name}, $Cat, ${${$name}} и $ Куче.