Ja, weil die aktuelle Lösung für das Implicitly-Nullable-Problem (ab PHP 8.4) entgegen der Richtlinien für phpBB 4.0 ist. Denn da darf das nicht mit einem vorangestellten
?
beim Typ gelöst werden, sondern muss mit Union Types realisiert werden. Diese gibt es jedoch erst ab PHP 8.0. Das heisst wenn man das konform zu phpBB 4.0 lösen wollte, würde man zwangsläufig die Codebase auf mindestens PHP 8.0 hochsetzen.PPSSE 4.0 würde also nicht meckern weil die PHP Codebase <8.0 ist, sondern weil die Lösung nicht den Richtlinien entspricht, welche ihrerseits aber mindestens PHP 8.0 voraussetzen.
Die folgende (aktuelle) Lösung vom PHP 8.4 Thema erfordert mindestens PHP 7.1:
Code: Alles auswählen
function test(string $param_a, bool $param_b, ?array $param_c = null)
{
// Hier machen wir irgendwas sinnvolles... oder auch nicht. ;-)
}
Code: Alles auswählen
function test(string $param_a, bool $param_b, array|null $param_c = null)
{
// Hier machen wir irgendwas sinnvolles... oder auch nicht. ;-)
}
Seit 2021 war das nie ein Problem, dass wir das "falsche" PPSSE 4.0 einsetzen. Aber jetzt wird es effektiv ein Problem und ich bin mir sicher, dass das auch noch nicht alles an neuen Richtlinien war, sondern da noch mehr kommen wird, was für 3.3 aber gar nicht relevant/sinnvoll ist.
Übrigens, bei phpBB 4.0 gilt mindestens PHP 8.1.