您认为在PHP中使用@运算符来抑制错误/警告是否有效,而您可能正在处理该错误?
如果是这样,您将在什么情况下使用它?
欢迎使用代码示例。
编辑:注释给回复者。我不想关闭错误报告功能,但是,例如,通常的做法是使用
@fopen($file);
然后再检查…但是您可以通过执行以下操作来消除@
if (file_exists($file)) { fopen($file); } else { die('File not found'); }
或类似。
我想问题是-是否有@HAS可以用来阻止错误,并且不能以任何其他方式处理?
我将抑制该错误 并进行处理 。否则,您可能会遇到 TOCTOU 问题(检查时间,使用时间。例如,在file_exists返回true之后但在fopen之前,文件可能会被删除)。
但是我不会仅仅抑制错误以使它们消失。这些更好地可见。