时间:2021-07-01 10:21:17 帮助过:2人阅读
举例:
?
$a = 1; $b = &$a; $b = 2; echo $b; //2 echo $a; //2
?1
表示 传递给函数的是一个引用。 如果你确实想用引用传递。你需要 function a(&$obj) {} 才接受。不过不推荐 2 表示传递的是一个变量。 只是接收的时候是一个引用接收。 不推荐。 手册中说明。 php4.1 ,似乎是从这个版本开始,php引入了变量计数功能。 变量传递没有额外内存的支出。并且引用传递需要另外的引用计数, 所以不推荐引用传递, 如果变量不是很大的还,推荐用传值,别引用。 从 php5开始 。所有 Obj 都是引用传递。 无论是否用 &= 并且 &= 在对Obj 操作的时候,会有一条警告信息。 所以, 通常情况下避免引用传递, 数组内引用传递更麻烦。
&表示传地址
当需要对大数据进行操作的时候,传址节省内存,当需要函数多返回值的时候也可以引用传参
我给你网上找了一篇文章,你看看,应该可以帮助你理解
参考:http://blog.sina.com.cn/s/blog_4f9fc6e10100av1p.html
指针即可以指内存地址,又可以指内存地址当中的值,引用是指两个变量指向同一块内存,就是名字不同而已。
?