3v4l.org

run code in 300+ PHP versions simultaneously
<?php declare(strict_types = 1); class One { public function test() :?DateTimeImmutable { return rand(0,1) === 1 ? new DateTimeImmutable(): null; } } class Two { public function test(): void { $test = new One(); echo $test->test() ? $test->test()->format('d') : null; } } $two = new Two(); $two->test();
Output for 7.1.26 - 7.1.28, 7.1.30, 7.2.0 - 7.2.1, 7.2.3, 7.2.7, 7.2.12 - 7.2.15, 7.2.19 - 7.2.20, 7.3.0, 7.3.2, 7.3.5, 7.3.7
Output for 7.1.25, 7.2.5 - 7.2.6, 7.2.8, 7.2.10, 7.2.17 - 7.2.18, 7.3.3, 7.3.6
Fatal error: Uncaught Error: Call to a member function format() on null in /in/jNRDj:17 Stack trace: #0 /in/jNRDj(23): Two->test() #1 {main} thrown in /in/jNRDj on line 17
Process exited with code 255.
Output for 7.1.29, 7.2.2, 7.2.4, 7.2.9, 7.2.11, 7.2.16, 7.3.1, 7.3.4
09

preferences:
69.75 ms | 402 KiB | 40 Q