php的值传递与引用传递的问题?

2024-11-22 06:53:34
推荐回答(2个)
回答1:

function printString(&$string) {
//传递参数进来
//那么 $str = &$string;
//也就是$str, $string共同指向一个内容区域
//其中一个改变,另一个也改变

echo $string;//所以先打印 256223!
$string = "打印完成!\n";//然后改变值 $string = "打印完成!\n";
}
$str = "256223!\n";
printString($str);

echo $str;//这里值已经改变了

回答2:

$a = 'c';

$b = &$a; //表示$b 和 $a 引用了同一个变量

$a = 'abc'; //这里重置了$a

echo $b; //将输出abc

unset($a);//取消引用

echo $b;//这里仍输出 abc

$a = 'abcd';

echo $b;//因为已经取消引用 这里仍输出abc