我倾向于在PHP中获得很多这些:
Missing argument 2 for ui_alert()
我理解如何“修复它”,但这不是我想要的。我想要的是更改我的错误报告设置,以便它们不会显示。
我喜欢尽可能广泛地报告错误,但对我来说这个警告似乎很荒谬。每次更新函数以处理某个用例时,我都必须更改我的整个代码库。除非我遗漏了什么,否则它不会引入任何安全问题。
我可以在不关闭任何其他警告的情况下抑制此特定警告吗?
答案 0 :(得分:1)
请尝试解析null
数据,而不是更改错误报告。请参阅下面的示例:
function User_Defined ($Argument_1, $Argument_2, $Argument_3){
// Perform some functionality
}
然后像这样调用你的函数:
$I_Want_This_Only = 1; // Added, for the personal hate to spot obvious errors within my code. Without this, it will generate an undefined index. This is a personal preference.
User_Defined($I_Want_This_Only,null,null);
您可以检查每个函数调用并禁止显示消息。工作示例:
function User_Defined ($Argument_1, $Argument_2, $Argument_3){
// Perform some functionality
}
$I_Want_This_Only = 1; // Added, for the personal hate to spot obvious errors within my code. Without this, it will generate an undefined index. This is a personal preference.
User_Defined($I_Want_This_Only,null);
返回错误:
警告:缺少User_Defined()
的参数3
但是打电话:
@User_Defined($I_Want_This_Only,null);
不会返回错误。
在理想的世界中,创建函数是为了接受多个参数。如果这些是user_defined函数,那么为什么创建它们以接受比实际想要的更多的参数?
最佳做法是不关闭错误报告。您可以关闭个别报告,例如:
notice
或warning
但是,这将关闭属于通知或警告标准的每条错误消息的整个报告。因此,您可能会遇到可能对您的应用程序造成风险的潜在问题。
您有四种选择。
null
来填充参数来调用您的函数。warning
条件。答案 1 :(得分:1)
只需在ui_alert()
函数声明中为您的参数添加一个默认值,例如null
,该警告就会消失。
我可以在不关闭任何其他警告的情况下抑制此特定警告 警告?
没有。您可以关闭所有警告
有一个错误控制操作符(@
)允许您抑制表达式的任何错误或警告,但这是一种不好的做法,它需要您更改“整个代码库”