PHP中的引用賦值

php提供了一種叫作“引用賦值”的方式,也就是讓新變量指向原變量,一旦新變量的值發生變化,原變量的值也會隨着發生變化,一下面的語句爲例由於新變量var2指向原變量var1(前面加上&符號),當新變量var2的值變爲“Mary”時,原變量var1的值也會隨着變爲“Mary”:

$var1 = "John";                //原變量var1的值爲“John”
$var2 = &$var1;              //新變量var2指向原變量var1(前面加上&符號)
$var2 = "Mary";                //新變量var2的值更改爲“Mary”
echo $var2;                    //新變量var2的值更改爲“Mary”,故顯示出“Mary”
echo $var1;                    //原變量var1的值隨着新變量var2更改爲“Mary”,故顯示出“Mary”

下面的例子是應用在foreach中:

$level = ['value'=> 0, 'label' => 'Root'];
foreach ($level as $key => &$option) {
    $option = $option . 'Top';
}

這裏面foreach中的value值option前加了一個‘&’,這裏的意思是當foreach中的 option值發生改變時。數組$level跟着發生變化,所以上面的代碼執行完之後得到的結果如下:

Array
(
    [value] => 0Top
    [label] => RootTop
)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章