rsk*_*k82 7 php error-handling
通常php脚本在E_NOTICE之后继续运行,有没有办法在函数的上下文中将其提升为致命错误,也就是说我只需要在我的函数中退出通知,而不是在核心php函数上退出,这是全局的.
Pek*_*ica 12
您可以创建一个自定义错误处理程序来捕获E_NOTICEs.
这是未经测试的,但应该朝着正确的方向前进:
function myErrorHandler($errno, $errstr, $errfile, $errline)
{
if ($errno == E_USER_NOTICE)
die ("Fatal notice");
else
return false; // Leave everything else to PHP's error handling
}
Run Code Online (Sandbox Code Playgroud)
然后,set_error_handler()在输入函数时将其设置为新的自定义错误处理程序,并在离开时恢复PHP的错误处理程序:
function some_function()
{
// Set your error handler
$old_error_handler = set_error_handler("myErrorHandler");
... do your stuff ....
// Restore old error handler
set_error_handler($old_error_handler);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5426 次 |
| 最近记录: |