目录

PHP set_error_handler() 函数

PHP 错误参考

示例

使用set_error_handler()函数设置用户定义的错误处理函数,并触发错误(使用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");
}
?>
亲自试一试 »

定义和用法

set_error_handler() 函数设置用户定义的错误处理函数。

笔记:如果使用此函数,则完全绕过标准 PHP 错误处理程序,并且用户定义的错误处理程序必须终止脚本 die()(如有必要)。

笔记:如果在执行脚本之前发生错误,则无法使用自定义错误处理程序,因为当时尚未注册。


语法

set_error_handler( errorhandler, E_ALL | E_STRICT)

参数值

Parameter Description
errorhandler Required. Specifies the name of the function to be run at errors
E_ALL|E_STRICT Optional. Specifies on which error report level the user-defined error will be shown. Default is "E_ALL"

技术细节

返回值: 包含先前定义的错误处理程序的字符串
PHP 版本: 4.0.1+
PHP 变更日志: PHP 5.5:参数错误处理程序现在接受 NULL
PHP 5.2:错误处理程序必须返回 FALSE 才能填充 $php_errormsg

PHP 错误参考