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.12
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.1.32, 8.2.0 - 8.2.29, 8.3.0 - 8.3.25

preferences:
54.36 ms | 407 KiB | 5 Q