3v4l.org

run code in 300+ PHP versions simultaneously
<?php class U { public $id; public $name; } $a = ['id' => 123, 'name' => 'Me']; $o = (object)$a; var_dump($o); $a0 = new ArrayObject($a); $a1 = new ArrayObject($a, ArrayObject::STD_PROP_LIST); $a2 = new ArrayObject($a, ArrayObject::ARRAY_AS_PROPS); $a3 = new ArrayObject($a, ArrayObject::STD_PROP_LIST | ArrayObject::ARRAY_AS_PROPS); $a3x = new ArrayObject($a, ArrayObject::STD_PROP_LIST & ArrayObject::ARRAY_AS_PROPS); var_dump($a0); var_dump($a0->name); var_dump($a1->name); var_dump($a2->name); var_dump($a3->name); var_dump($a3x->name);
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
object(stdClass)#1 (2) { ["id"]=> int(123) ["name"]=> string(2) "Me" } object(ArrayObject)#2 (1) { ["storage":"ArrayObject":private]=> array(2) { ["id"]=> int(123) ["name"]=> string(2) "Me" } } Warning: Undefined property: ArrayObject::$name in /in/dAXjk on line 18 NULL Warning: Undefined property: ArrayObject::$name in /in/dAXjk on line 19 NULL string(2) "Me" string(2) "Me" Warning: Undefined property: ArrayObject::$name in /in/dAXjk on line 22 NULL
Output for 5.6.0 - 5.6.27, 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.16 - 7.3.31, 7.4.0 - 7.4.33
object(stdClass)#1 (2) { ["id"]=> int(123) ["name"]=> string(2) "Me" } object(ArrayObject)#2 (1) { ["storage":"ArrayObject":private]=> array(2) { ["id"]=> int(123) ["name"]=> string(2) "Me" } } Notice: Undefined property: ArrayObject::$name in /in/dAXjk on line 18 NULL Notice: Undefined property: ArrayObject::$name in /in/dAXjk on line 19 NULL string(2) "Me" string(2) "Me" Notice: Undefined property: ArrayObject::$name in /in/dAXjk on line 22 NULL
Output for 7.3.32 - 7.3.33
object(stdClass)#1 (2) { ["id"]=> int(123) ["name"]=> string(2) "Me" } object(ArrayObject)#2 (1) { ["storage":"ArrayObject":private]=> array(2) { ["id"]=> int(123) ["name"]=> string(2) "Me" } } NULL NULL string(2) "Me" string(2) "Me" NULL

preferences:
172.43 ms | 402 KiB | 188 Q