在 PHP 中,可以使用错误处理机制来处理程序执行时出现的错误。常见的错误处理方式有两种:
- 错误抑制符(@):在函数或代码前加上 @ 符号可以忽略掉此处可能出现的错误信息。
例如:
@mysql_query($sql);
- 函数 error_reporting() 和 set_error_handler():这两个函数可以对 PHP 中出现的错误或者异常进行自定义处理。
例如:
//设置错误报告级别
error_reporting(E_ALL);
//自定义错误处理函数
function customErrorHandler($errno, $errstr, $errfile, $errline) {
echo "<b>Error:</b> [$errno] $errstr
<br />Line $errline in $errfile<br />";
die();
}
//设置错误处理函数
set_error_handler("customErrorHandler");
//执行代码,调用可能出错的函数
$result = @mysql_query($sql);
//如果 $result 为 false,触发自定义错误处理函数
if (!$result) {
trigger_error(mysql_error(), E_USER_ERROR);
}
这段代码中,我们首先通过 error_reporting() 函数设置了所有类型的错误都需要报告,然后通过 set_error_handler() 函数指定了自定义的错误处理函数 customErrorHandler。
接下来,我们调用了可能会出错的函数 mysql_query(),并用错误抑制符 @ 让代码在出错时继续执行。如果 $result 返回 false,我们会在 if 语句中手动调用触发一个错误,此时就会执行我们自定义的错误处理函数 customErrorHandler。在该函数中,我们用 echo 语句输出错误信息,并用 die() 函数退出程序。
以上是 PHP 中较为常见的错误处理方式。当然,在实际开发过程中,还需要根据具体情况和项目需求选择最适合的错误处理方式。