3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $object = (object) array("123.5"=>"456"); var_dump($object); foreach ($object as $key => $value) { echo $key . ' => ' . $value,"\n"; } $object = (object) array(123.5=>"456"); var_dump($object); foreach ($object as $key => $value) { echo $key . ' => ' . $value,"\n"; } // neither array key is suitable for identifier of object property b/c identifiers cannot start with a number.
based on Hlsqt
Output for 5.2.1 - 5.6.28, hhvm-3.12.0, 7.0.0 - 7.1.0
object(stdClass)#1 (1) { ["123.5"]=> string(3) "456" } 123.5 => 456 object(stdClass)#2 (1) { [123]=> string(3) "456" } 123 => 456
Output for hhvm-3.10.0

Process exited with code 153.
Output for 5.2.0
object(stdClass)#1 (1) { ["123.5"]=> string(3) "456" } 123.5 => 456 object(stdClass)#2 (1) { [123]=> string(3) "456" }
Process exited with code 139.
Output for 5.0.0 - 5.0.5, 5.1.1 - 5.1.6
object(stdClass)#1 (1) { ["123.5"]=> string(3) "456" } 123.5 => 456 object(stdClass)#2 (1) { [123]=> string(3) "456" }
Output for 5.1.0
Fatal error: fatal flex scanner internal error--end of buffer missed in /in/VIlfG on line 13
Process exited with code 255.
Output for 4.3.0 - 4.4.9
object(stdClass)(1) { ["123.5"]=> string(3) "456" } 123.5 => 456 object(stdClass)(1) { [123]=> string(3) "456" } 123 => 456