PHP中传值和传址的区别, 十分的简单, 看字面的意思大概就知道是什么意思了, 下面通过简单的实例看一下两者的区别.
1 $a = 5; 2 function show(&$b) { 3 $b += 10; 4 echo "函数内部:" . $b . "<hr>";//结果: 15 5 } 6 show($a); 7 echo "函数外部:" . $a . "<hr>";//结果: 15
总结:
$a =&$b, 把变量a的内存地址赋值给b, 即引用赋值. b指向a指向的地址, b和a是指向同一内存块, 修改其中一个的值也会改变另一个的值.
而 $b = a, 是把a引用的内存拷贝到b指向的内存中, b和a指向不同的内存块, 但内存的值一样的, b和a可以独立改变互不影响.
时间: 2024-12-25 22:46:39