探索 PHP 错误处理:从基础调试到自定义异常捕获

2025-12-10 30阅读

文章最后更新时间:2025年12月11日

在 PHP 开发中,错误和异常是不可避免的 —— 可能是语法错误、逻辑错误,也可能是运行时异常(如数据库连接失败)。合理的错误处理不仅能快速定位问题,还能避免向用户暴露敏感信息。本文通过实例讲解 PHP 错误处理的核心方法。

20241023123444172965808490153.jpeg

一、基础调试:显示与记录错误

<?php
// 开启错误显示(开发环境)
ini_set('display_errors', 1);
error_reporting(E_ALL);

// 记录错误到日志(生产环境)
ini_set('log_errors', 1);
ini_set('error_log', './php_error.log');

// 触发一个警告错误
echo $undefinedVar; // 未定义变量,会触发警告并记录到日志
?>

二、实战:自定义异常捕获

<?php
// 定义自定义异常类
class UserException extends Exception {
    public function errorMessage() {
        return "用户异常:{$this->getMessage()}(行号:{$this->getLine()})";
    }
}

try {
    $age = -10;
    if ($age < 0) {
        // 抛出自定义异常
        throw new UserException("年龄不能为负数");
    }
    echo "年龄:{$age}";
} catch (UserException $e) {
    // 捕获自定义异常
    echo $e->errorMessage();
} catch (Exception $e) {
    // 捕获其他通用异常
    echo "通用异常:{$e->getMessage()}";
}
?>

总结

PHP 错误处理的核心是 “区分环境处理”:开发环境开启错误显示便于调试,生产环境关闭显示、开启日志记录;自定义异常能精准捕获业务逻辑错误,让错误信息更易理解。掌握错误处理技巧,能大幅提升代码的健壮性和可维护性。
文章版权声明:除非注明,否则均为Dark零点博客原创文章,转载或复制请以超链接形式并注明出处。