Web 应用程序并不总是按计划进行,这是显而易见的。用户将不断找到在您的应用程序中触发错误的方法,您如何记录、包含和消除这些错误是对您的代码的真实证明。 PHP 提供了捕获错误并按照您需要的方式处理错误的方法。 PHP 错误处理的最佳部分是它可以使用 PHP 的 set_error_handler() 函数高度自定义。
错误处理程序
function xhandler($number,$string,$file,$line,$context) { //log to text file? //log to xml file? //store in database? //whatever you want to do! }
解释
您的错误处理函数可以接受五个参数:
- $number – 表示 PHP 错误级别的整数错误编号
- $string – 错误的字符串描述
- $file – 发生错误的文件
- $line – 文件中发生错误的行号
- $context – 该区域的上下文,包括范围内每个变量的数组
用法
/* use this error for ALL (E_ALL) errors */ set_error_handler('xhandler',E_ALL);
这是 PHP 中自定义错误处理的基本示例。保存和分析这些错误的程序和方法由您决定,但常用的方法包括:
- 将错误保存到数据库
- 将错误信息保存到本地文件(文本、xml 等)
- 将用户重定向到另一个页面
- 绝对没有(我实际上在其他开发人员的代码中看到过)。
li>
尽管您几乎可以在错误处理函数中执行任何操作,但我建议以下错误处理函数:
- 存储错误的日期/时间
- 使用多种方法存储错误日志(数据库、文件等)
- 通过电子邮件发送严重警告/错误给自己,以便尽快处理任何关键问题
- 如有必要,对不同的错误级别使用不同的错误处理函数
- 每天创建一个新的文件日志,以便您的日志文件不会膨胀
如何记录应用程序中的 PHP 错误?