wordpress 中出现Optional parameter $filterpanel declared before required parameter $containerid is impl
如果带有默认值的参数后面跟着一个必要的参数,那么默认值就会无效。这在 PHP 8.0.0 中已被废弃,通常可以通过删除默认值,不影响现有功能:
<?php
function test($a = [], $b) {} // 之前
function test($a, $b) {} // 之后
?>1234
这条规则的一个例外是 Type $param = null 形式的参数,其中 null 的默认值使得类型隐式为空。这种用法仍然是允许的,但仍建议使用显式可空类型。
<?php
function test(A $a = null, $b) {} // 旧写法,仍可用
function test(?A $a, $b) {} // 推荐写法
?>