当我使用debug_zval_dump()时,为什么refcount为1? PHP

时间:2016-11-03 05:17:53

标签: php

我无法理解debug_zval_dump()打印的引用计数。

<?php
    $str = "test function";
    $sr1 = '';
    $str1 = & $str;

    debug_zval_dump($str);

上述代码的输出:string(13)&#34; test function&#34;引用计数(1)

当我在$ str:

之前删除&符号时
<?php
    $str = "test function";
    $sr1 = '';
    $str1 =  $str;

    debug_zval_dump($str);

上述代码的输出:string(13)&#34; test function&#34;引用计数(3)

发生了什么事?第一个引用计数是&#34; 1&#34;但是,我认为它也引用了三次。

1 个答案:

答案 0 :(得分:0)

因为正在制作$ str的副本,所以在调用该函数时。