php null 引用计数归0问题

WBOY
Release: 2016-06-06 20:48:52
Original
1053 people have browsed it

网上很多说$a = null 是直接将$a 指向的数据结构置空,同时将其引用计数归0。

但是我的测试发现,并没有归0,代码如下:

<code>$s=str_repeat('1',2);  //这和第二个例子完全相同  
$p=&$s;  
$s=null;  
xdebug_debug_zval('s', 'p');
</code>
Copy after login
Copy after login

打印输出:

<code>s:

(refcount=2, is_ref=1),null

p:

(refcount=2, is_ref=1),null
</code>
Copy after login
Copy after login

其中的refcount还是2,并没有归为0,不知道为什么会这样

回复内容:

网上很多说$a = null 是直接将$a 指向的数据结构置空,同时将其引用计数归0。

但是我的测试发现,并没有归0,代码如下:

<code>$s=str_repeat('1',2);  //这和第二个例子完全相同  
$p=&$s;  
$s=null;  
xdebug_debug_zval('s', 'p');
</code>
Copy after login
Copy after login

打印输出:

<code>s:

(refcount=2, is_ref=1),null

p:

(refcount=2, is_ref=1),null
</code>
Copy after login
Copy after login

其中的refcount还是2,并没有归为0,不知道为什么会这样

$s=null这句执行完以后,s和p指向的对象都是null,这个对象的refcount是2,一点问题都没有。

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!