在通过 set_error_handler() 函数更改错误处理函数之后对其进行恢复:
<?php // 用户定义的错误处理函数 function myErrorHandler($errno, $errstr, $errfile, $errline) { echo "<b>Custom error:</b> [$errno] $errstr<br>"; echo " Error on line $errline in $errfile<br>"; } // 设置用户自定义的错误处理函数 set_error_handler("myErrorHandler"); $test=2; // 触发错误 if ($test>1) { trigger_error("A custom error has been triggered"); } // 恢复之前的错误处理函数 restore_error_handler(); // 再次触发错误 if ($test>1) { trigger_error("A custom error has been triggered"); } ?>
以上代码的输出类似这样:
Custom error: [1024] A custom error has been triggered Error on line 14 in C:\webfolder\test.php Notice: A custom error has been triggered in C:\webfolder\test.php on line 21
restore_error_handler() 函数恢复之前的错误处理程序。
在使用 set_error_handler() 改变错误处理函数之后,此函数可以用于还原之前的错误处理程序。
提示:之前的错误处理函数可以是内置的或者也可以是用户所定义的函数。
restore_error_handler();
返回值: | 始终返回 TRUE。 |
---|---|
PHP 版本: | 4.0.1+ |