PHP的可變變量的應用
來源:易賢網 閱讀:1113 次 日期:2014-09-18 16:52:18
溫馨提示:易賢網小編為您整理了“PHP的可變變量的應用”,方便廣大網友查閱!

有時候可變的變量名會給編程帶來很大的方便。也就是說變量名可以被動態(tài)的命名和使用。通常變量通過下面這樣的語句來命名 :

<?php$a = 'hello';?>

可變變量名指的是使用一個變量的值作為這個變量的名稱。在上面的例子中,通過使用兩個$符號,你可以把hello設置成一個變量的名稱,就像下面那樣。

<?php$$a = 'world';?>

通過上面的兩個語句,有兩個變量被定義:變量$a,裝的內容是”hello” 以及變量$hello,裝的內容是 “world”。 于是,下面的語言:

<?phpecho "$a ${$a}";?>

跟下面的語句的輸出完全一致:

<?phpecho "$a $hello";?>

它們都輸出:hello world。為了使用數(shù)組的可變變量名,你需要解決一個歧義問題。就是,如果你寫$$a[1],解析器需要明白究竟你的意思是要把$a[1]當成一個變量,還是要把$$a當成變量、[1]指的是這個變量的索引。

解決這個歧義問題的語法是:

第一種情況使用${$a[1]},第二種情況使用${$a}[1]。

類屬性也可以通過可變屬性名來訪問??勺儗傩悦麖漠a生調用所在的變量的訪問范圍內獲取。例如,如果你的表達式是這樣的:$foo->$bar,那么運行時將會在本地變量范圍內尋找變量$bar,它的值將會做為$foo對象的一個屬性名。如果$bar是個數(shù)組也可以使用。

例1 可變變量名$bar . "n";echo $foo->$baz[1] . "n";?>上面的例子將會輸出下面的結果:I am bar.I am bar.

警告請注意,可變變量名不能用于PHP函數(shù)和類里的超級全局數(shù)組變量上。變量$this也是一個不能動態(tài)取名的特殊變量。

更多信息請查看IT技術專欄

更多信息請查看網絡編程
易賢網手機網站地址:PHP的可變變量的應用
關于我們 | 聯(lián)系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網