标签:返回 ret span test func UNC 改变 效率 自增
值传递 (示例demo)
1 <?php 2 //值传递: 在函数范围内,改变变量值得大小,都不不会影响到函数外边的变量值. 3 function test($i){ 4 $i++;//变量i自增值加1 5 $a=$i;//变量i赋值给变量a 6 return $a;//返回变量a 7 } 8 9 $i=5;//定义变量i 10 echo $i.‘<br>‘;//输出:5 11 echo test($i).‘<br>‘;//输出:6 12 echo $i;//输出:5
引用传递 (示例demo)
1 <?php 2 //引用传递: 在函数范围内,对值的任何改变,在函数外部也有所体现,因为传引用传的是内存地址. 3 function test(&$i){ 4 $i++;//变量i自增值加1 5 $a=$i;//变量i的引用传给变量a 6 return $a;//返回变量a 7 } 8 9 $i=5;//定义变量i 10 echo $i.‘<br>‘;//输出:5 11 echo test($i).‘<br>‘;//输出:6 12 echo $i;//输出:6
应用场景:
(1)值传递时,php必须复制值.
(2)引用传递则不需要复制值,故引用传递一般用于大字符串或对象.
优缺点:
(1)传值会很耗时间,特别是对于大型的字符串和对象来说,这将会是一个代价很大的操作.
(2)传送引用,函数内的任何操作等同于对传送变量的操作,传送大型变量时效率高.
标签:返回 ret span test func UNC 改变 效率 自增
原文地址:https://www.cnblogs.com/cxx8181602/p/9413108.html