按正常理解php的变量是引用计数,第一次创建变量refcount会是0,当把这个变量赋给新的变量时,refcount会加1
但是,经过测试,php7.0.33下和php7.3.11下效果都不是按照这个来的
代码:
$val = "taoshihan best";
xdebug_debug_zval(‘val‘);$copy = $val;
xdebug_debug_zval(‘val‘);
php7.0下
val: (refcount=0, is_ref=0)=‘taoshihan best‘
val: (refcount=0, is_ref=0)=‘taoshihan best‘ //这里的refcount 没有加1
php7.3下
val: (refcount=1, is_ref=0)=‘taoshihan best‘ //这里是1,好像说是php7新特性啥的,也没有理解到
val: (refcount=1, is_ref=0)=‘taoshihan best‘ //这里也没加1
看了鸟哥的博客,和他的结果也不一样,完全晕掉了
原文:https://www.cnblogs.com/taoshihan/p/12382632.html