<?php   $a = 12;  $b = $a; $c = &$a; echo $b."_".$c; //12_12 $a = 15; echo $b."_".$c;//12_15?>&为引用变量 or 函数地址等,这个&跟C语言的指针有相似之处,$b=$a;只是把变量a的值赋值给变量b,当变量a发生变化时,变量b不会跟着变化

解决方案 »

  1.   

    感觉这样理解吧:
    $b=$a  只是会把a对应的值赋给b,并不会将地址也给b;
    $c=&$a 是引用赋值,会将a的地址分离出去给c,也就是说a是啥c就是啥
    unset($a), 断开连接,其实就是将$a指向的地址断开,比如你说的0x111222,只是会将这个指向连接断开,但这个地址中的值仍然存在。可能表达不太清楚
    希望能帮到你吧
      

  2.   

    1.你的理解算是正确
    2.$c = & $a  是会复制一个$b     $c 、 $a指向0x111222
    3.unset($a) 只是把$a从symbol_table删除 并把$a的zval  --recount 如果   recount==0 则gc