3v4l.org

run code in 500+ 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.24, 8.5.0 - 8.5.9
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.1.34, 8.2.0 - 8.2.32, 8.3.0 - 8.3.33

preferences:
77.35 ms | 891 KiB | 4 Q