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

PHP的可變變量名的使用方法分享

通常變量通過下面這樣的語句來命名 :
復制代碼 代碼如下:
<?php
$a = 'hello';
?>

可變變量名指的是使用一個變量的值作為這個變量的名稱。在上面的例子中,通過使用兩個$符號,你可以把hello設置成一個變量的名稱,就像下面那樣。
復制代碼 代碼如下:
<?php
$$a = 'world';
?>

通過上面的兩個語句,有兩個變量被定義:變量$a,裝的內容是”hello” 以及變量$hello,裝的內容是 “world”。 于是,下面的語言:
復制代碼 代碼如下:
<?php
echo "$a ${$a}";
?>

跟下面的語句的輸出完全一致:
復制代碼 代碼如下:
<?php
echo "$a $hello";
?>

它們都輸出:hello world。
為了使用數組的可變變量名,你需要解決一個歧義問題。就是,如果你寫$$a[1],解析器需要明白究竟你的意思是要把$a[1]當成一個變量,還是要把$$a當成變量、[1]指的是這個變量的索引。解決這個歧義問題的語法是:第一種情況使用${$a[1]},第二種情況使用${$a}[1]。
類屬性也可以通過可變屬性名來訪問。可變屬性名從產生調用所在的變量的訪問范圍內獲取。例如,如果你的表達式是這樣的:$foo->$bar,那么運行時將會在本地變量范圍內尋找變量$bar,它的值將會做為$foo對象的一個屬性名。如果$bar是個數組也可以使用。
例1 可變變量名
復制代碼 代碼如下:
<?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的可變變量名的使用方法分享,轉載需保留來源!

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

主站蜘蛛池模板: 亚洲欧美成人 | chinese麻豆| 亚洲狠狠婷婷综合久久久久图片 | 在线a视频网站 | 91李宗精品72集在线观看 | 福利在线观看视频 | 国产精品亚洲一区二区三区在线观看 | 国产精品伦理一区二区三区 | 亚洲精品小视频 | 日韩精品一区二区三区国语自制 | 欧美黄色大片免费观看 | 国产亚洲精品高清在线 | 免费一区二区三区视频导航 | 天天综合天天干 | 国内精品免费一区二区观看 | 国产精品免费一区二区三区 | 国产成人亚洲综合小说区 | 激情文学小说区另类小说同性 | 四虎啪啪| 狠狠大日本亚洲香蕉亚洲 | 国产女人视频免费观看 | 米奇777四色精品人人爽 | 精品视频99 | 免费观看四虎精品国产永久 | 日本一区二区三区欧美在线观看 | 亚洲综人网 | 日韩一区二区三区免费视频 | 日本精品免费 | 伊人精品在线 | 国产福利精品一区二区 | 精品一区二区三区在线观看 | 久久九九久精品国产 | 精品中文字幕在线观看 | 激情小说激情图片激情视频 | 精品国产九九 | 乱码一区 | 激情小说激情视频激情图片 | 精品国产品国语在线不卡丶 | 91精品国产福利尤物免费 | 一区二区三区四区五区 | 999影院成 人在线影院 |