变量的传值与传引用
傳值:$b=$a ? //將a變量的值傳值給b變量。
//調(diào)式傳值
$a=100;
$b=200;
$b=$a;
echo $b;//100
$a=300;
echo $b;//100
$b=300;
echo $a;//300
unset ($a);
echo $a;
echo $b;
傳引用: $b=&$a ? //將a變量的地址傳遞給b變量。
//調(diào)式傳引用
$a=100;
$b=200;
$b=&$a;
echo $b;//100
$a=300;
echo $b;//300
$b=300;
echo $a;//300
unset ($a);
echo $a;
echo $b;
所以說(shuō),傳值只是傳值而已,兩者并沒(méi)有關(guān)系,當(dāng)a發(fā)生改變時(shí),b不會(huì)發(fā)生改變。
? ? ? ? ? ?傳引用就是將a跟b的地址指向同一個(gè)地址,只要有一個(gè)值發(fā)生改變,另一個(gè)也會(huì)發(fā)生改變,當(dāng)其中一個(gè)值被注銷掉,另一個(gè)值得變量還是會(huì)保留。
當(dāng)然函數(shù)參數(shù)傳遞時(shí)也可以按值傳遞或引用傳遞。
1.函數(shù)參數(shù)傳遞時(shí)也可以按值傳遞或引用傳遞。
function get_val(&$a,&$b){
$a=300;
$b=400;
}
$a=100;
$b=200;
get_val($a,$b);
echo $a;
echo $b;//有&符號(hào)結(jié)果是300,400,去掉&結(jié)果是100,200
2.全局變量需要在函數(shù)體中使用時(shí),除了用參數(shù)傳遞方法,還可以在函數(shù)體中使用global聲明。或用$GLOBALS["a"]數(shù)組讀取。
function get_val(){
//global $a,$b;
//echo $a,$b;
echo $GLOBALS["a"],
$GLOBALS["b"];//這個(gè)是獲取全局變量
}
$a=100;
$b=200;
get_val();//調(diào)式結(jié)果為100,200
?
轉(zhuǎn)載于:https://www.cnblogs.com/jiexinpeng/p/6645140.html
總結(jié)
- 上一篇: jQuery中hover与mouseov
- 下一篇: 常用正则表达式大全!