3v4l.org

run code in 300+ PHP versions simultaneously
<?php final class DemoFile { private Bar $foo; public function __construct(?Bar $foo = null) { $this->foo = $foo ?? new Bar(); } public function work(): void { echo $this->foo::class; } } class Bar {} (new DemoFile(null))->work(); final class DemoFile2 { public function __construct(private readonly ?Bar $foo = new Bar()) { } public function work(): void { echo $this->foo::class; } } (new DemoFile2(null))->work();
Output for git.master, git.master_jit
Bar Fatal error: Uncaught TypeError: Cannot use "::class" on null in /in/VcW9g:29 Stack trace: #0 /in/VcW9g(33): DemoFile2->work() #1 {main} thrown in /in/VcW9g on line 29
Process exited with code 255.

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
32.48 ms | 405 KiB | 5 Q