PHP 8.0 废弃在可选参数后声明强制参数,否则可能会报warning

PHP 8.0 开始,废弃在可选参数后声明强制参数,可以通过删除默认值来解决。
此规则一个例外是 Type $param = null 形式的参数, 其中 null 默认值使类型隐性允许为空。这种做法依然允许,但是推荐使用显性可为 null 的类型代替。
<?php
function foo($a = [], $b) {} // 之前
function foo($a, $b) {}      // 之后

function bar(A $a = null, $b) {} // 同时可用
function bar(?A $a, $b) {}       // 官方推荐的写法
?>

否则可能会报下面的 warning:
Deprecate required parameters after optional parameters in function/method signatures
THE END