2012-07-10 86 views
3

假設我有以下幾點:PHP:使用變量值變量名:好奇的語法問題

$foo = "bar"; 
$bar = "hello"; 

然後字符串「hello」,可以回顯到標準輸出爲兩種:

echo $$foo; 

echo ${$foo}; 

我想知道有什麼區別,一般這兩個語句之間。 也就是說,在上面顯示的第二種語法中,評估變量名稱 的大括號的目的是什麼?

回答

8

使用$ {$ FOO}的唯一原因是要能$ foo的,結合到別的東西,例如:

$idx = 4; 
$bar3 = 20; 
$bar4 = 7; 
echo ${$foo.$idx} 

因爲$ IDX是值得這將返回在$ bar4值4 ;

+0

謝謝,這是有益的。 – 2012-07-10 19:00:13