3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php function tescik(ArrayObject $ao) { //$ao['foo2'] = 'kaboom'; throw new Exception('kaboom'); } $obj = new ArrayObject(array('foo1' => 'bar1', 'foo2' => 'bar2'), ArrayObject::ARRAY_AS_PROPS); echo "\n\n"; echo "before:"; var_dump($obj); $obj2 = clone $obj; try { $obj2 = tescik($obj2); } catch(Exception $e) { } echo "after:"; var_dump($obj2); echo "\n\n";
Output for 5.3.0 - 7.1.0
before:object(ArrayObject)#1 (1) { ["storage":"ArrayObject":private]=> array(2) { ["foo1"]=> string(4) "bar1" ["foo2"]=> string(4) "bar2" } } after:object(ArrayObject)#2 (1) { ["storage":"ArrayObject":private]=> array(2) { ["foo1"]=> string(4) "bar1" ["foo2"]=> string(4) "bar2" } }
Output for 5.1.0 - 5.2.17
before:object(ArrayObject)#1 (2) { ["foo1"]=> string(4) "bar1" ["foo2"]=> string(4) "bar2" } after:object(ArrayObject)#2 (2) { ["foo1"]=> string(4) "bar1" ["foo2"]=> string(4) "bar2" }
Output for 5.0.0 - 5.0.5
Fatal error: Undefined class constant 'ARRAY_AS_PROPS' in /in/Fdfe3 on line 9
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting ')' in /in/Fdfe3 on line 3
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Parse error: parse error, unexpected T_STRING, expecting ')' in /in/Fdfe3 on line 3
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `')'' in /in/Fdfe3 on line 3
Process exited with code 255.