PHP值传递和引用传递的区别


 

PHP值传递和引用传递的区别。什么时候传值什么时候传引用

(1)按值传递:函数范围内对值的任何改变在函数外部都会被忽略

(2)按引用传递:函数范围内对值的任何改变在函数外部也能反映出这些修改

(3)优缺点:

A:按值传递时,php必须复制值。特别是对于大型的字符串和对象来说,这将会是一个代价很大的操作。

B.按引用传递则不需要复制值,对于性能提高很有好处。

 1 <?php  2 header('content-type:text/html;charset=utf-8');  3  4 //探讨一下 array , null, 对象 ,资源的默认传递方式  5  // 结论 (1) array 默认是值传递,通过加 & 可以引用传递  6  // (2) null 默认是值传递,通过加 & 可以引用传递  7  // (3) 资源 是值传递.通过加 & 可以引用传递  8  // (4) 对象默认也是值传递,但是对象值传递是对象标识符  9 $hero = array('no1'=>'蝙蝠侠', 'no2'=>'超人'); 10 11 $hero2 = &$hero; 12 $hero2['no1'] = '蜘蛛侠'; 13 echo '<pre>'; 14 var_dump($hero); 15 var_dump($hero2); 16 17 18 $a = null; 19 $b = &$a; 20 $b = 'abc'; 21 22 var_dump($a, $b);


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM