有的情涗下, 用一個變數來儲存另一個變數的名字會令編程更方便。 因為這樣一來可以動態地調用變數。 一個正常的變數宣告是這樣的:
而一個變數的變數則把存在其中的值當做是另一個變數的名字。 在上例的 $a 之前用兩 '$' 號的話, hello就會被當成是另一個變數的名字:
到這�為止, 一共宣告了兩個變數, 一個是 $a, 另一個是 $hello。 是以下面的指令:
所印出來的結果和這一句
的結果是一樣的: hello world.
在用變數的變數這法子來存取陣列的話, 要留意 $$a[1] 有兩個意思: 可以是指 $a[1] 是一個變數的名稱、也可以指 $$a 是一個變數名稱而 [1] 是該變數中元素的索引 號。 為了明確告訴電腦你的意圖, 用 ${$a[1]} 代表第一個意思、 ${$a}[1] 代表第二個。