哥们,PHP5.4之后的引用部分改变了$foo=25;
$boo=$foo;
unset($boo);
echo $foo; //输出25func(&$var); 
function func(&$var){ 
//对$var的一系列运算处理 
}
但到了php5.4以后的版本,对数组和对象的引用传递发生了变化,是这样的:func($var); //注意这里,调用函数的时候已经没有了&,但定义的时候还有
function func(&$var){
//对$var的一系列运算处理
}

解决方案 »

  1.   

    如果你在使用unset();对其引用的变量的引用关系还在,那么这块内存暂时还不会被释放,只有当所有变量对这块内存区域的引用都断掉后,这块被释放的内存区域才会被释放
      

  2.   


    谢谢回复,您好我只是想知道 当PHP解析器遇到$foo=25 在内存中的变化情况,可以指点下吗,谢谢啦
      

  3.   

    如果是对象
    那么 $foo 保存的是对象的地址
    $boo = $foo 只是copy了一个地址给他但是 数据 25 只是一个 数值 所以 不会有 25这个对象  地址直接就是 数值
      

  4.   

    本帖最后由 xuzuning 于 2013-11-22 14:03:00 编辑