Что стоит # рядом с объектом (someClass) в var_dump объекта? У меня есть вывод. Я прав?

Это код и его выходные данные, которые я использовал для вывода ниже:

 class a {
    public $var1;
    public $var2;
    }

 $obj0 = new a;
 var_dump($obj0);

 class b {
    public $var1;
    public $var2;
    public $var3;
    }

 $obj1 = new b;
 var_dump($obj1);

 $obj2 = new stdClass;
 var_dump($obj2);

 $obj3 = new stdClass;
 var_dump($obj3); 

 $obj4 = new stdClass;
 var_dump($obj4);

 $obj5 = new stdClass;
 var_dump($obj5);

 var_dump(new stdClass); 

 $obj6 = new stdClass;
 var_dump($obj6);  

Результат:

object(a)#1 (2) {
  ["var1"]=> NULL
  ["var2"]=> NULL
}
object(b)#2 (3) {
  ["var1"]=> NULL
  ["var2"]=> NULL
  ["var3"]=> NULL
}
object(stdClass)#3 (0) {

}
object(stdClass)#4 (0) {

}
object(stdClass)#5 (0) {

}
object(stdClass)#6 (0) {

}
object(stdClass)#7 (0) {

}
object(stdClass)#7 (0) {

}

# рядом со строкой объект (someClass) в var_dump объекта на самом деле является # . Где

count - это количество объектов / zval для объектов , независимо от того, к какому классу он принадлежит, что было создано до сих пор. Которая продолжает увеличиваться для каждого созданного объекта и уменьшается на 1, когда счетчик ссылок zval достигает нуля, то есть сборки мусора.

Я прав?

13
задан 1.21 gigawatts 26 October 2015 в 09:14
поделиться