<?php
class bad
{
private $_private = array();
public function __construct()
{
$this->_private[] = 'oh noes';
}
public function __destruct()
{
//echo "bad::destructor\n";
global $bar;
$bar = $this->_private;
}
}
$foo = new stdclass;
$foo->foo = $foo;
$foo->bad = new bad;
print_r($foo);
gc_disable();
$bar = new stdclass;
$bar->foo = $bar;
$bar->bad = new bad;
gc_collect_cycles();
stdClass Object
(
[foo] => stdClass Object
*RECURSION*
[bad] => bad Object
(
[_private:private] => Array
(
[0] => oh noes
)
)
)
Fatal error: Call to undefined function gc_disable() in /in/fmW8i on line 24
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/fmW8i on line 4
Process exited with code 255.
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/fmW8i on line 4
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/fmW8i on line 4
Process exited with code 255.