84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
<?php $a = 1; xdebug_debug_zval("a"); static $b = 1; xdebug_debug_zval("b"); ?>
为何执行后输出是a: (refcount=1, is_ref=0)=1b: (refcount=2, is_ref=1)=1 static变量和普通变量为何会有这样的区别?
欢迎选择我的课程,让我们一起见证您的进步~~
refcount是计数次数,如果为0 就是被销毁 如果用Unset 这个数会减1 is_ref是表示引用 猜想:这表变量里的内容是另一个内存地址(也就是真实的内容),然后unset只会删除这个变量,并不会删除这个内存地址里面的东西http://php.net/manual/zh/features.gc.refcounting-basics.php
refcount是计数次数,如果为0 就是被销毁
如果用Unset 这个数会减1
is_ref是表示引用
猜想:这表变量里的内容是另一个内存地址(也就是真实的内容),然后unset只会删除这个变量,并不会删除这个内存地址里面的东西
http://php.net/manual/zh/features.gc.refcounting-basics.php