mirror of
https://github.com/php/php-src.git
synced 2024-12-18 14:30:35 +08:00
34 lines
534 B
Plaintext
34 lines
534 B
Plaintext
|
--TEST--
|
||
|
GC 028: GC and destructors
|
||
|
--FILE--
|
||
|
<?php
|
||
|
class Foo {
|
||
|
public $bar;
|
||
|
public $x = array(1,2,3);
|
||
|
function __destruct() {
|
||
|
if ($this->bar !== null) {
|
||
|
$this->x = null;
|
||
|
unset($this->bar);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
class Bar {
|
||
|
public $foo;
|
||
|
function __destruct() {
|
||
|
if ($this->foo !== null) {
|
||
|
unset($this->foo);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
}
|
||
|
$foo = new Foo();
|
||
|
$bar = new Bar();
|
||
|
$foo->bar = $bar;
|
||
|
$bar->foo = $foo;
|
||
|
unset($foo);
|
||
|
unset($bar);
|
||
|
var_dump(gc_collect_cycles());
|
||
|
?>
|
||
|
--EXPECT--
|
||
|
int(2)
|