Vanwege de aanstaande PHP 8.1 upgrade hebben we recent veel deprecation meldingen opgelost. Denk aan:
PHP:
1
2
3
4
5
6
| function getRating($value)
{
$value = round($value);
}
getRating(null); |
Gooit voortaan deze melding:
PHP Deprecated: round(): Passing null to parameter #1 ($num) of type int|float is deprecated
Meer uitleg:
https://wiki.php.net/rfc/...ll_to_scalar_internal_arg
Dat had iemand opgelost door een null waarde niet door de round() functie te halen, maar daar had dan "return 0" in plaats van "return null" moeten staan.
PHP:
1
2
3
4
5
6
7
8
9
10
11
| function getRating(?float $value)
{
if ($value === null) {
return null; // ai
return 0; // fix
}
$value = round($value);
}
getRating(null); |
De pagina waar je naar linkt betreft een oud stuk code waar geen unit testing voor beschikbaar is, waardoor dit soort foutjes er sneller inslopen.