3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $a = array('foo','bar',1); $x1 = new ArrayObject($a); $x1['foo1'] = 'foo1'; $x2 = new ArrayObject; $x2->exchangeArray(iterator_to_array($x1)); $x2['foo2'] = 'foo2'; var_dump($a, $x1, $x2);
Output for 5.3.0 - 7.1.0
array(3) { [0]=> string(3) "foo" [1]=> string(3) "bar" [2]=> int(1) } object(ArrayObject)#1 (1) { ["storage":"ArrayObject":private]=> array(4) { [0]=> string(3) "foo" [1]=> string(3) "bar" [2]=> int(1) ["foo1"]=> string(4) "foo1" } } object(ArrayObject)#2 (1) { ["storage":"ArrayObject":private]=> array(5) { [0]=> string(3) "foo" [1]=> string(3) "bar" [2]=> int(1) ["foo1"]=> string(4) "foo1" ["foo2"]=> string(4) "foo2" } }
Output for 5.2.4 - 5.2.17
array(3) { [0]=> string(3) "foo" [1]=> string(3) "bar" [2]=> int(1) } object(ArrayObject)#1 (4) { [0]=> string(3) "foo" [1]=> string(3) "bar" [2]=> int(1) ["foo1"]=> string(4) "foo1" } object(ArrayObject)#2 (5) { [0]=> string(3) "foo" [1]=> string(3) "bar" [2]=> int(1) ["foo1"]=> string(4) "foo1" ["foo2"]=> string(4) "foo2" }
Output for 5.1.0 - 5.2.3
array(4) { [0]=> string(3) "foo" [1]=> string(3) "bar" [2]=> int(1) ["foo1"]=> string(4) "foo1" } object(ArrayObject)#1 (4) { [0]=> string(3) "foo" [1]=> string(3) "bar" [2]=> int(1) ["foo1"]=> string(4) "foo1" } object(ArrayObject)#2 (5) { [0]=> string(3) "foo" [1]=> string(3) "bar" [2]=> int(1) ["foo1"]=> string(4) "foo1" ["foo2"]=> string(4) "foo2" }
Output for 5.0.0 - 5.0.5
Fatal error: Call to undefined method ArrayObject::exchangeArray() in /in/Ca4lq on line 6
Process exited with code 255.
Output for 4.3.2 - 4.4.9
Fatal error: Cannot instantiate non-existent class: arrayobject in /in/Ca4lq on line 3
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Fatal error: Cannot instantiate non-existent class: arrayobject in /in/Ca4lq on line 3