一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

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

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

類屬性也可以通過可變屬性名來訪問。可變屬性名從產生調用所在的變量的訪問范圍內獲取。例如,如果你的表達式是這樣的:$foo->$bar,那么運 行時將會在本地變量范圍內尋找變量$bar,它的值將會做為$foo對象的一個屬性名。如果$bar是個數組也可以使用。
復制代碼 代碼如下:
<?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函數和類里的超級全局數組變量上。變量$this也是一個不能動態取名的特殊變量。

php技術數組與類使用PHP的可變變量名需要的注意的問題,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久青草视频 | 99色播| 香蕉久久久久久狠狠色 | 97精品国产自在现线免费观看 | 日本欧美久久久久免费播放网 | 亚洲激情五月 | 色综合色综合色综合色综合 | 黄色长视频 | 天天综合视频网 | 91国内在线 | 久艾草国产成人综合在线视频 | 国产精品第二页在线播放 | 亚洲婷婷网 | 国产成人精视频在线观看免费 | 美女又美女又黄又免费网站 | 日本色婷婷| 国产女同一区二区三区五区 | 亚洲欧洲精品成人久久曰影片 | 精品日本亚洲一区二区三区 | 小视频在线观看免费 | 小说专区图片专区 | 丁香六月婷婷综合 | 欧美亚洲国产精品 | 久久国产免费一区二区三区 | 国产精品特级毛片一区二区三区 | 一二三四在线播放免费视频中国 | 丝袜诱惑一区二区 | 91视频a| 色多多视频在线播放 | 美女三级福利视频 | 伊人久久狼人 | 色综合五月天 | 色综合久久88中文字幕 | 四虎影视久久久 | 亚洲福利一区福利三区 | 亚洲图片欧美小说 | 天天综合网网欲色 | 三级韩国一区久久二区综合 | 国产精品福利午夜一级毛片 | 高清视频黄色录像免费 | 国产小视频网站 |