3v4l.org

run code in 500+ PHP versions simultaneously
<?php class Foo { public function __construct( public readonly string $bar ){} } $foo = new Foo('bar'); var_dump($foo->bar); $arrayObject = new ArrayObject($foo); $arrayObject['bar'] = new \DateTimeImmutable("1986-08-20 midnight"); var_dump($foo->bar);
Output for 8.5.0 - 8.5.8
string(3) "bar" Deprecated: ArrayObject::__construct(): Using an object as a backing array for ArrayObject is deprecated, as it allows violating class constraints and invariants in /in/gSWFF on line 14 object(DateTimeImmutable)#3 (3) { ["date"]=> string(26) "1986-08-20 00:00:00.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" }
Output for 8.1.0 - 8.1.34, 8.2.0 - 8.2.32, 8.3.0 - 8.3.32, 8.4.1 - 8.4.23
string(3) "bar" object(DateTimeImmutable)#3 (3) { ["date"]=> string(26) "1986-08-20 00:00:00.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" }
Output for 8.0.1 - 8.0.30
Parse error: syntax error, unexpected identifier "string", expecting variable in /in/gSWFF on line 6
Process exited with code 255.

preferences:
83.14 ms | 1173 KiB | 4 Q