PHP也有Day

1. 精通 PHP 錯誤處理,讓除錯更自在

PHP错误设定

  • PHP 预设为E_ALL & ~E_NOTICE,即显示除 Notice 外的所有错误
  • 在开发过程中,建议将错误级别设置为 E_ALL 或 -1,开发者应该处理所有可能的 Warning & Notice,不要让任何可能的 Bug 有机会出现。
  • 老旧系统运行时,可以考虑设置为 0,避免用户看到大量的 Notice信息。
  • 生产环境中,可以设置为 0,但将所有重要错误记录进 log。

set_error_handler() 方法可以自定义错误处理,该方法会覆盖系统的标准错误处理。
error_log() 可用于记录执行的错误信息

可以使用 Monolog 来管理日志信息。
如果公司采用微服务,可以考虑将单台服务器用作日志服务器,以免日志空间不足。

PHP 7的 Exceptions
PHP 7的 Exceptions

异常状况的处理示例:

1
2
3
4
5
6
7
foreach ($jobs as $job) {
try {
Queue::process($job);
} catch (QueueException $e) {
Mailer::send('A queue job error', $message);
}
}
因为热爱,所以执着。