您可以创建一个自定义错误处理程序来捕获E_NOTICE.
这是未经测试但应该朝着正确的方向:
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 }
然后,在输入函数时使用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); }