新聞中心
本教程操作環(huán)境:windows7系統(tǒng)、php7.1版、DELL G3電腦

雙$符指的是“可變變量”,是PHP中的一種獨(dú)特的變量,他允許動態(tài)改變一個(gè)變量的名稱。
所謂可變變量就是一個(gè)變量以另外一個(gè)變量的值作為變量名。
一個(gè)可變變量獲取了一個(gè)普通變量的值作為這個(gè)可變變量的變量名。利用這一特性我們可以動態(tài)的設(shè)置和使用一個(gè)變量的變量名。
例如,我們可以設(shè)置$str的值:
$name = 'str';
于是,我們就可以用
name 取代$str。
name = 5;
這個(gè)代碼等價(jià)于:
$str= 5;
可變變量的使用方法
只需要在變量名前加上至少兩個(gè)“$”符號即可
數(shù)組使用可變變量
為了使用數(shù)組的可變變量名,你需要解決一個(gè)歧義問題。就是,如果你寫$$a[1],解析器需要明白究竟你的意思是要把$a[1]當(dāng)成一個(gè)變量,還是要把$$a當(dāng)成變量、[1]指的是這個(gè)變量的索引。解決這個(gè)歧義問題的語法是:第一種情況使用${$a[1]},第二種情況使用${$a}[1]
類屬性也可以通過可變屬性名來訪問??勺儗傩悦麖漠a(chǎn)生調(diào)用所在的變量的訪問范圍內(nèi)獲取。例如,如果你的表達(dá)式是這樣的:$foo->$bar,那么運(yùn)行時(shí)將會在本地變量范圍內(nèi)尋找變量$bar,它的值將會做為$foo對象的一個(gè)屬性名。如果$bar是個(gè)數(shù)組也可以使用。
可變變量名不能用于PHP函數(shù)和類里的超級全局?jǐn)?shù)組變量上。變量$this也是一個(gè)不能動態(tài)取名的特殊變量。
實(shí)例
下面的實(shí)例使用可變變量改變變量的名稱。代碼如下:
"; echo $$str; //通過可變變量輸出$trans的值 ?>
實(shí)例詳解:
首先定義兩個(gè)變量$str和$trans,并且輸出變量$str的值,然后使用可變變量來改變變量$str的名稱,最后輸出改變名稱后的變量值
運(yùn)行結(jié)果如下:
網(wǎng)站名稱:php中雙$符是什么意思
標(biāo)題來源:http://www.5511xx.com/article/cdcosig.html


咨詢
建站咨詢
