mansartesteban/error-handler

此包已被废弃,不再维护。未建议替代包。

错误处理类,可记录你的异常,并可以以美观的方式显示它们。

dev-master 2019-03-11 10:19 UTC

This package is auto-updated.

Last update: 2020-02-12 20:55:31 UTC


README

法语

介绍

这个库让你能够处理异常。它按日期和类型创建日志文件。ErrorHandler提供了一个日志文件解析系统,以显示美观的界面(进行中)

文档

方法

ErrorHandler::init($options = []);
ErrorHandler::isCreated();
ErrorHandler::log($type = "", Exception $ex, mixed $additionalParameters = null);

选项

ErrorHandler::init($options = []);

初始化时,你必须传递一个选项数组来定义处理器的行为,否则它将抛出 LogicException

$options = [
  "logDir" => "/log", // Path to directory which contains log files
  "cssClass" => "errorHandler-log", // CSS class name that delimitate a log section
];

logDir 是你定义的 string。如果它以 "/" 结尾,则 "/" 将被忽略(例如:"/private/log", "/log", "/engine/error/log/", ...)

cssClass 是你定义的 string(例如:"log", "error-log", "admin-log-section", ...)

ErrorHandler::log($type = "", Exception $ex, $additionalParameters = null)

type 是一个定义错误类型的 string。它用于在 $options["logDir"] 中创建子目录(例如:"PDO", "PHP", "API_FACEBOOK", ...)

ex 是你捕获或实例化的 Exception。你可以传递任何继承自 Exception 类型的异常。

示例

初始化

//File : /src/config/initClasses.php

$optionsErrorHandler = [
  "logDir" => "/private/log",
  "cssClass" => "log-error"
];

if (!ErrorHandler::isCreated()) {
  ErrorHandler::init($optionsErrorHandler);
}

记录一个异常

// Exemple 1 :
try {
  // your code here ...
} catch (PDOException $ex) {
  ErrorHandler::log("PDO", $ex, [$sqlReq, $sqlParams]);
}

// Exemple 2 :
if ($url == null) {
  ErrorHandler::log("logic", new LogicExepction("url for cURL request is null"));
}