是否可以全局忽略"Error: Too few arguments to function"?



我的代码中有几个功能,它们需要一个以上的参数。

我正在使用PHP 5.5,每当我只输入第一个参数时,它都可以正常工作,并且只是忽略了第二个参数(我想它将其视为" 0"(。

,但我刚刚升级到PHP 7.2,这已成为一个问题。

因此,不是修复我的所有代码,即传播在多个文件上,而是有一种方法可以订购PHP 7.2以继续将不确定的参数视为" 0",以避免此错误,这使页面导致页面崩溃?

编辑:

样本功能:

function calculate( $m,$status ) {
    return ''.$m.''.$status.'';
}

如果$status不存在,则应简单地输出$m

最简单且最清洁的方法是为每个参数提供默认值,使它们 optionals

function myFunction ($requiredParam, $optionalInt = 0, $optionalStr = '') {
    //
}

然后,您可以在没有错误的情况下调用myFunction(1);myFunction(1,2); CC_4。

如果您对发生这种情况的原因感到好奇,那是BeaCuse

"以前,将发出警告以调用用户定义 函数的参数太少。现在,该警告已被提升 错误例外。此更改仅适用于用户定义 功能,而不是内部功能。"

相关内容

最新更新