3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $a=array(); $a[-2]='a'; $a[-1]='b'; $a[0] ='c'; $a[ 1]='d'; $obj=(object)$a; var_dump($obj); echo $obj->{-2}.', '.$obj->{0}.', '.$obj->{1}."\n"; echo $obj->{'-2'}.', '.$obj->{'0'}.', '.$obj->{'1'}."\n"; $b =(array)$obj; echo $b[-2].', '.$b[0].', '.$b[1]."\n"; $obj=unserialize(serialize($obj)); echo $obj->{-2}.', '.$obj->{0}.', '.$obj->{1}."\n"; ?>
based on EZeF8
Output for 5.3.9 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
object(stdClass)#1 (4) { [-2]=> string(1) "a" [-1]=> string(1) "b" [0]=> string(1) "c" [1]=> string(1) "d" } Notice: Undefined property: stdClass::$-2 in /in/656OO on line 10 Notice: Undefined property: stdClass::$0 in /in/656OO on line 10 Notice: Undefined property: stdClass::$1 in /in/656OO on line 10 , , Notice: Undefined property: stdClass::$-2 in /in/656OO on line 11 Notice: Undefined property: stdClass::$0 in /in/656OO on line 11 Notice: Undefined property: stdClass::$1 in /in/656OO on line 11 , , a, c, d a, c, d
Output for 5.2.6 - 5.3.8
object(stdClass)#1 (4) { [-2]=> string(1) "a" [-1]=> string(1) "b" [0]=> string(1) "c" [1]=> string(1) "d" } Notice: Undefined property: stdClass::$-2 in /in/656OO on line 10 Notice: Undefined property: stdClass::$0 in /in/656OO on line 10 Notice: Undefined property: stdClass::$1 in /in/656OO on line 10 , , Notice: Undefined property: stdClass::$-2 in /in/656OO on line 11 Notice: Undefined property: stdClass::$0 in /in/656OO on line 11 Notice: Undefined property: stdClass::$1 in /in/656OO on line 11 , , a, c, d Notice: Undefined property: stdClass::$-2 in /in/656OO on line 16 Notice: Undefined property: stdClass::$0 in /in/656OO on line 16 Notice: Undefined property: stdClass::$1 in /in/656OO on line 16 , ,
Output for 5.0.0 - 5.2.5
object(stdClass)#1 (4) { [-2]=> string(1) "a" [-1]=> string(1) "b" [0]=> string(1) "c" [1]=> string(1) "d" } Notice: Undefined property: stdClass::$-2 in /in/656OO on line 10 Notice: Undefined property: stdClass::$0 in /in/656OO on line 10 Notice: Undefined property: stdClass::$1 in /in/656OO on line 10 , , Notice: Undefined property: stdClass::$-2 in /in/656OO on line 11 Notice: Undefined property: stdClass::$0 in /in/656OO on line 11 Notice: Undefined property: stdClass::$1 in /in/656OO on line 11 , , a, c, d Notice: Undefined property: stdClass::$-2 in /in/656OO on line 16 Notice: Undefined property: stdClass::$0 in /in/656OO on line 16 Notice: Undefined property: stdClass::$1 in /in/656OO on line 16 , ,
Output for 4.3.3 - 4.4.9
Fatal error: Property name must be a string in /in/656OO on line 10
Process exited with code 255.
Output for 4.3.0 - 4.3.2
object(stdClass)(4) { [-2]=> string(1) "a" [-1]=> string(1) "b" [0]=> string(1) "c" [1]=> string(1) "d" } Notice: Undefined property: -2 in /in/656OO on line 10
Process exited with code 139.