变量引用计数问题

php_way 2014-09-15 10:49:22
变量引用就让人弄得走火入魔
什么引用、分离、写时复制,写时改变.....
比如:
<?php
$a = 1;
$b = & $a;

xdebug_debug_zval('a');
debug_zval_dump($a);

/*结果
b:
(refcount=2, is_ref=1),int 1

long(1) refcount(1)
*/

refcount测试出来结果不一样,xdebug准还是内置的debug_zval_dump准?
...全文
160 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
傲雪星枫 2014-09-16
  • 打赏
  • 举报
回复
xishizhaohua 2014-09-16
  • 打赏
  • 举报
回复
调用 debug_zval_dump($a); 时候形参和$a进行了分离 debug_zval_dump调用可参考下面的情况 $a= 1; $b= &$a $c=$a
侑子的小伙伴 2014-09-16
  • 打赏
  • 举报
回复
引用 6 楼 php_way 的回复:
这两个函数不都是用来查看引用计数的吗
皆是查看应用计数 debug_zval_dump($a); 请用引用方式debug_zval_dump(&$a); 因为你这种调用和下面情况一样 会发生读写分离 $c 已经和$a分离 $a= 1; $b= &$a $c=$a xdebug_debug_zval是真是的引用计数 而debug_zval_dump因为给它传参 所以是引用计数+1
php_way 2014-09-16
  • 打赏
  • 举报
回复
这两个函数不都是用来查看引用计数的吗
php_way 2014-09-16
  • 打赏
  • 举报
回复
引用 4 楼 xuzuning 的回复:
两个函数的报告中的 refcount 不是一个意思 请不要被一知半解的文章迷惑了
那分别是什么意思呢?
xuzuning 2014-09-16
  • 打赏
  • 举报
回复
两个函数的报告中的 refcount 不是一个意思 请不要被一知半解的文章迷惑了
php_way 2014-09-16
  • 打赏
  • 举报
回复
引用 2 楼 fdipzone 的回复:
参考http://www.laruence.com/2008/09/19/520.html
正是看了这篇文章才有的问题

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧