PHP传值和传引用的区别

PHP传值:在函数范围内,改变变量值的大小,不会影响到函数外面的变量值

PHP传引用(&):在函数范围内,改变变量值的大小,会影响到函数外的变量值,在函数外部也会有所体现,因为传引用传的是变量的内存地址、指针。

传值(彼此独立不影响)

eg:
<?php $a=1; //定义变量a $b=2; //定义变量b $b = $a; //变量a赋值给变量b echo $b; //显示为1 ?>

传引用(彼此影响)

<?php    
$param2=1;               //定义变量2    
$param1 = &$param2;      //将变量2的引用传给变量1    
echo $param2;            //显示为1    
$param1 = 2;             //把2赋值给变量1    
echo $param2;            //显示为2    
?>   

总结:传值需要消耗的时间要大于传引用,特别是传大型的字符串或对象时;传送引用,函数内的任何操作等同于对传送变量的操作,传送大型变量时效率高!

猜你喜欢

转载自www.cnblogs.com/zwesy/p/9096002.html