色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

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

通常變量通過(guò)下面這樣的語(yǔ)句來(lái)命名 :
復(fù)制代碼 代碼如下:
<?php
$a = 'hello';
?>

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

通過(guò)上面的兩個(gè)語(yǔ)句,有兩個(gè)變量被定義:變量$a,裝的內(nèi)容是”hello” 以及變量$hello,裝的內(nèi)容是 “world”。 于是,下面的語(yǔ)言:
復(fù)制代碼 代碼如下:
<?php
echo "$a ${$a}";
?>

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

它們都輸出:hello world。
為了使用數(shù)組的可變變量名,你需要解決一個(gè)歧義問(wèn)題。就是,如果你寫$$a[1],解析器需要明白究竟你的意思是要把$a[1]當(dāng)成一個(gè)變量,還是要把$$a當(dāng)成變量、[1]指的是這個(gè)變量的索引。解決這個(gè)歧義問(wèn)題的語(yǔ)法是:第一種情況使用${$a[1]},第二種情況使用${$a}[1]。
類屬性也可以通過(guò)可變屬性名來(lái)訪問(wèn)。可變屬性名從產(chǎn)生調(diào)用所在的變量的訪問(wèn)范圍內(nèi)獲取。例如,如果你的表達(dá)式是這樣的:$foo->$bar,那么運(yùn)行時(shí)將會(huì)在本地變量范圍內(nèi)尋找變量$bar,它的值將會(huì)做為$foo對(duì)象的一個(gè)屬性名。如果$bar是個(gè)數(shù)組也可以使用。
例1 可變變量名
復(fù)制代碼 代碼如下:
<?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";
?>

上面的例子將會(huì)輸出下面的結(jié)果:
I am bar.
I am bar.
警告
請(qǐng)注意,可變變量名不能用于php函數(shù)和類里的超級(jí)全局?jǐn)?shù)組變量上。變量$this也是一個(gè)不能動(dòng)態(tài)取名的特殊變量。

php技術(shù)PHP的可變變量名的使用方法分享,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 巴林左旗| 宁都县| 西充县| 扶绥县| 远安县| 丰顺县| 琼中| 东安县| 尼玛县| 沽源县| 辽宁省| 天津市| 麻江县| 钟祥市| 五常市| 黄龙县| 宿州市| 玉溪市| 芷江| 辽源市| 鲁甸县| 高淳县| 乐业县| 锦屏县| 洛川县| 遵义市| 南澳县| 信丰县| 阳高县| 海城市| 扎鲁特旗| 桃园县| 江川县| 北海市| 甘德县| 沂水县| 洪雅县| 合水县| 鹿泉市| 多伦县| 江油市|