$var(一個美元)是一個正常變數,名稱為:var,存儲任何值,如:string,integer,float等。
$$var(兩個美元)是一個引用變數,用於存儲$var的值。
為了更好地理解$和$$之間的區別,下麵來看看一些例子。
示例1
file: example1.php
<?php
$x = "abc";
$$x = 200;
echo $x."<br/>";
echo $$x."<br/>";
echo $abc;
?>
輸出結果如下:
在上面的例子中,我們為變數x賦值為:”abc“。引用變數$$x的值分配為200。
現在我們列印出變數:$x,$$x和$abc。由此可以看出:$$x和$abc的值是相同的,即:因為 $x的值為”abc“,所以 $$x(${$x})計算後為$abc。
示例2
file: example2.php
<?php
$x="U.P";
$$x="Lucknow";
echo $x. "<br>";
echo $$x. "<br>";
echo "Capital of $x is " . $$x;
?>
輸出結果如下:
在上面的例子中,我們為變數x賦值一個值:”U.P“ , 引用變數$$x的值被指定為Lucknow。
現在我們列印了:$x,$$x值和一個字串。
示例3
file: example3.php
<?php
$name="Cat";
${$name}="Dog"; // => $Cat = "Dog"
${${$name}}="Monkey"; // => $Cat = "Monkey"
echo $name. "<br>";
echo ${$name}. "<br>";
echo $Cat. "<br>";
echo ${${$name}}. "<br>";
echo $Dog. "<br>";
?>
輸出結果如下:

在上面的例子中,我們為變數:Cat指定了一個值。 引用變數${$name}分配一個值:”Dog“, ${${$name}}分配一個值:”Monkey“ 。
現在我們將列印 $name,${$name},$Cat,${${$name}}和$Dog的值。
