3v4l.org

run code in 500+ PHP versions simultaneously
<?php declare(strict_types=1); class Foo { const int FOO = 42; } /** * @psalm-require-extends Foo */ trait Bar { public function foo(): int { return static::FOO; } } class Baz extends Foo { use Bar; } $baz = new Baz(); var_dump($baz->foo());
Output for 8.3.5 - 8.3.31, 8.4.9 - 8.4.22, 8.5.1 - 8.5.7
int(42)
Output for 8.2.31
Parse error: syntax error, unexpected identifier "FOO", expecting "=" in /in/9Ntb8 on line 6
Process exited with code 255.

preferences:
36.65 ms | 557 KiB | 4 Q