PHP 8.0 开始,废弃在可选参数后声明强制参数

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

相关文章

暂无评论

暂无评论...