gc_035.phpt 355 B

12345678910111213141516171819202122232425
  1. --TEST--
  2. GC 035: Lost inner-cycles garbage
  3. --INI--
  4. zend.enable_gc = 1
  5. --FILE--
  6. <?php
  7. class A {
  8. public $a;
  9. public $x;
  10. function __destruct() {
  11. unset($this->x);
  12. }
  13. }
  14. $a = new A;
  15. $a->a = $a;
  16. $a->x = [];
  17. $a->x[] =& $a->x;
  18. $a->x[] = $a;
  19. var_dump(gc_collect_cycles());
  20. unset($a);
  21. var_dump(gc_collect_cycles());
  22. ?>
  23. --EXPECT--
  24. int(0)
  25. int(2)