错误和异常处理
有效处理运行时错误和异常
错误和异常处理 是 CoddyKit 上的免费 PHP Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 PHP Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 PHP Academy 课程共包含 4 节课。
错误处理简介
错误与异常处理
欢迎学习错误与异常处理课程!在本课中,您将学习如何妥善处理错误,并使用异常创建更可靠且易于维护的 PHP 应用程序。让我们开始吧!

什么是错误和异常?
什么是错误和异常?
错误:代码中阻止程序正常运行的意外问题,例如语法错误和未定义变量。
异常:表示程序中错误或意外情况的特殊对象。您可以捕获并处理异常,而不会导致应用程序崩溃。
主要区别:错误通常是致命的,而异常可以被捕获和管理。
PHP 中的错误类型
PHP 中的错误类型
PHP 有多种错误类型:
- 解析错误:阻止代码执行的语法问题。
- 致命错误:PHP 无法执行的代码,例如调用未定义的函数。
- 警告错误:不会停止脚本执行但表示存在问题的情况。
- 通知错误:访问未定义变量等轻微问题。
要点:了解错误类型有助于高效地调试和解决问题。
基本错误处理
基本错误处理
使用 PHP 的 error_reporting() 函数控制显示哪些错误。示例:
提示:使用 ini_set() 动态配置错误显示设置。
<?php
// Display all errors
error_reporting(E_ALL);
// Hide warnings
error_reporting(E_ALL & ~E_WARNING);
echo $undefinedVar; // This will trigger a Notice
?>
自定义错误处理
自定义错误处理
使用 set_error_handler() 创建自定义错误处理函数。示例:
要点:自定义错误处理器有助于记录日志和显示自定义错误消息。
<?php
function customErrorHandler($errno, $errstr, $errfile, $errline) {
echo "Error [$errno]: $errstr in $errfile on line $errline<br>";
}
set_error_handler("customErrorHandler");
echo $undefinedVar; // Triggers custom error handler
?>
使用异常
使用异常
异常为在 PHP 中处理错误提供了结构化方式。示例:
要点:使用 try-catch 代码块妥善处理异常。
<?php
try {
if (!file_exists("example.txt")) {
throw new Exception("File not found.");
}
} catch (Exception $e) {
echo "Caught exception: " . $e->getMessage();
}
?>
抛出异常
抛出异常
使用 throw 关键字生成异常。示例:
提示:对于无效参数、缺失文件或数据库连接失败等情况,请抛出异常。
<?php
function divide($a, $b) {
if ($b == 0) {
throw new Exception("Division by zero.");
}
return $a / $b;
}
try {
echo divide(10, 0);
} catch (Exception $e) {
echo "Caught exception: " . $e->getMessage();
}
?>
记录错误日志
记录错误日志
使用 error_log() 将错误记录到文件中。示例:
要点:记录错误有助于在生产环境中跟踪问题,而不会将错误显示给用户。
<?php
error_log("An error occurred.", 3, "errors.log");
echo "Error logged to file.";
?>
做得很好!
做得很好!
恭喜您!您已经学习了 PHP 错误与异常处理的基础知识,包括管理错误、创建自定义处理器,以及使用异常实现可靠的错误管理。在下一课中,我们将探索如何在 PHP 中使用正则表达式。让我们继续编程吧!

常见问题解答
「错误和异常处理」课时是免费的吗?
是的 — 「错误和异常处理」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 PHP Academy 课程的其余内容,请升级到 CoddyKit PRO。 PHP Academy 课程共包含 4 节课。
「错误和异常处理」这节课中我会学到什么?
有效处理运行时错误和异常 你通过在浏览器中直接运行的动手代码来练习 PHP Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 PHP Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 PHP Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「错误和异常处理」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 PHP Academy 课中编写并运行代码吗?
能。每节 PHP Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 处理会话和 Cookie
- 使用文件
- 错误和异常处理
- 使用正则表达式