3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { function foo(array $a = NULL) {} } class B extends A { function foo(?array $a = NULL) {} } class C extends B { function foo(array $a = NULL) {} }
Output for 8.4.1 - 8.4.3
Deprecated: A::foo(): Implicitly marking parameter $a as nullable is deprecated, the explicit nullable type must be used instead in /in/CYFMS on line 4 Deprecated: C::foo(): Implicitly marking parameter $a as nullable is deprecated, the explicit nullable type must be used instead in /in/CYFMS on line 10
Output for 8.2.0 - 8.2.27, 8.3.0 - 8.3.16

preferences:
50.36 ms | 407 KiB | 5 Q