gpt4 book ai didi

php - 如何集中处理php错误和异常

转载 作者:行者123 更新时间:2023-12-03 08:36:27 25 4
gpt4 key购买 nike

以前在PHP 4中,我创建了一个自定义错误处理程序(如下)来处理我自己的触发错误和一般的PHP错误。但是现在PHP 5引入了异常,即我正在利用PDO进行数据库操作,并且不确定如何处理一般的PHP错误和这些异常?

function errorHandler($errno, $errstr, $errfile, $errline){  
switch ($errno) {
case E_USER_ERROR:
// Send an e-mail to the administrator
error_log("Error: $errstr \n Fatal error on line $errline in file $errfile \n", DEST_EMAIL, ADMIN_EMAIL);

// Write the error to our log file
error_log("Error: $errstr \n Fatal error on line $errline in file $errfile \n", DEST_LOGFILE, LOG_FILE);
break;

case E_USER_WARNING:
// Write the error to our log file
error_log("Warning: $errstr \n in $errfile on line $errline \n", DEST_LOGFILE, LOG_FILE);
break;

case E_USER_NOTICE:
// Write the error to our log file
error_log("Notice: $errstr \n in $errfile on line $errline \n", DEST_LOGFILE, LOG_FILE);
break;

default:
// Write the error to our log file
error_log("Unknown error [#$errno]: $errstr \n in $errfile on line $errline \n", DEST_LOGFILE, LOG_FILE);
break;
}

// Don't execute PHP's internal error handler
return TRUE;

}

最佳答案

您可以使用 set_exception_handler() 在自定义函数中处理未捕获的异常。

但是,“正确”的方法是让您在例如进行查询,并使用您的自定义函数对其进行相应记录。

关于php - 如何集中处理php错误和异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3502286/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com