国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

數(shù)組與類使用PHP的可變變量名需要的注意的問題

2024-05-04 23:10:42
字體:
來源:轉載
供稿:網(wǎng)友
有時候可變的變量名會給編程帶來很大的方便。也就是說變量名可以被動態(tài)的命名和使用。通常變量通過下面這樣的語句來命名 :
$a = 'hello';
可變變量名指的是使用一個變量的值作為這個變量的名稱。在上面的例子中,通過使用兩個$符號,你可以把hello設置成一個變量的名稱,就像下面那樣。
$$a = 'world';
通過上面的兩個語句,有兩個變量被定義:變量$a,裝的內容是”hello” 以及變量$hello,裝的內容是 “world”。 于是,下面的語言:
echo "$a ${$a}";
跟下面的語句的輸出完全一致:
echo "$a $hello";
它們都輸出:hello world。
但是為了使用數(shù)組的可變變量名,你需要解決一個歧義問題。就是,如果你寫$$a[1],解析器需要明白究竟你的意思是要把$a[1]當成一個變量,還是要 把$$a當成變量、[1]指的是這個變量的索引。解決這個歧義問題的語法是:第一種情況使用${$a[1]},第二種情況使用${$a}[1]。

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

復制代碼 代碼如下:


<?php
class foo {
var $bar = 'I am bar.';
}
$foo = new foo();
$bar = 'bar';
$baz = array('foo', 'bar', 'baz', 'quux');
echo $foo->$bar . "/n";
echo $foo->$baz[1] . "/n";
?>


上面的例子將會輸出下面的結果:

復制代碼 代碼如下:


I am bar.
I am bar.


請注意:可變變量名不能用于PHP函數(shù)和類里的超級全局數(shù)組變量上。變量$this也是一個不能動態(tài)取名的特殊變量。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 清水河县| 金阳县| 师宗县| 铅山县| 金寨县| 五华县| 南宫市| 河东区| 双辽市| 扬中市| 开化县| 灵丘县| 延川县| 宜宾县| 勃利县| 阿克陶县| 峨山| 田林县| 东丰县| 灵宝市| 伊通| 武城县| 平邑县| 陆川县| 迁西县| 顺平县| 手机| 彭水| 镇巴县| 蓬莱市| 交城县| 铜梁县| 阜阳市| 高雄县| 曲水县| 铅山县| 新建县| 德化县| 勃利县| 阿图什市| 盐池县|