例
设置一用户定义的错误处理程序函数与所述set_error_handler()函数,并触发错误(with trigger_error()
<?php
// A user-defined error handler function
function myErrorHandler($errno, $errstr, $errfile, $errline) {
echo "<b>Custom error:</b> [$errno] $errstr<br>";
echo " Error on line $errline in $errfile<br>";
}
// Set user-defined error handler function
set_error_handler("myErrorHandler");
$test=2;
// Trigger error
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
定义和用法
所述set_error_handler()函数将用户定义的错误处理函数。
Note:如果使用此功能,标准的PHP错误处理程序是完全旁路,用户定义的错误处理程序必须终止脚本, die()如果需要的话。
Note:如果在执行脚本之前无法使用的自定义错误处理程序,因为它没有在规定时间内注册出现的错误。
句法
set_error_handler( errorhandler ,E_ALL|E_STRICT) ;
参数 | 描述 |
---|---|
errorhandler | 需要。 指定在错误运行的函数的名称 |
E_ALL|E_STRICT | 可选的。 指定要在其错误报告水平将要显示的用户定义的错误。 默认值是"E_ALL" |
技术细节
返回值: | 包含先前定义的错误处理程序的字符串 |
---|---|
PHP版本: | 4.0.1+ |
PHP更新日志: | PHP 5.5:参数的ErrorHandler现在接受NULL PHP 5.2:错误处理程序必须返回FALSE填充$ php_errormsg中 |
<PHP误差基准