nimayneb / exceptionist
Exceptionist - 使用接口抛出有意义的语义异常
1.3.0
2019-04-19 12:05 UTC
Requires
- php: >=7.0
README
Exceptionist
使用接口抛出有意义的语义异常
异常类名称不包含“Exception”一词。这是冗余信息,更容易理解和阅读。
用法
use JBR\Exceptionist\InvalidArgument; use JBR\Exceptionist\InvalidityReason: function throwsAnException() { throw new InvalidArgument('An Argument is invalid'); } try { throwsAnException(); } catch (InvalidityReason $e) { echo $e->getMessage(); }
use JBR\Exceptionist\EmptyArgument; use JBR\Exceptionist\InvalidityReason: use JBR\Exceptionist\DeficiencyReason; function throwsAlsoAnException() { throw new EmptyArgument('An Argument is empty'); } try { throwsAlsoAnException(); } catch (InvalidityReason|DeficiencyReason $e) { echo $e->getMessage(); }
异常类型
- 空
- 设置了某些内容,但没有实际内容
- 无效
- 设置了某些内容,但包含无效字符或格式不正确
- 未知
- 设置了某些内容,但它是未知的(不是无效的)
- 缺失
- 设置了某些内容,但缺少需求
- 超时
- 设置了某些内容,但在特定时间窗口内无法读取
原因类型
- 缺失
- 在特定时间窗口内无法访问某些内容
- 兼容性
- 某些内容由于兼容性问题而损坏
- 不足
- 需要某些内容,但它是缺失的
- 无效
- 需要某些内容,但它无效
作用域类型
- 访问
- 具有访问性的某些内容
- 操作
- 具有操作的某些内容
- 参数
- 具有方法参数的某些内容
- 具有对象参数的某些内容
- 类
- 具有类实例的某些内容
- 配置
- 具有配置的某些内容
- 声明
- 具有声明的某些内容
- 定义
- 具有定义的某些内容
- 依赖
- 具有依赖的某些内容
- 接口
- 具有接口的某些内容
- 方法
- 具有对象方法的某些内容
- 对象
- 具有对象的某些内容
- 属性
- 具有对象属性的某些内容
- 引用
- 具有引用的某些内容
- 需求
- 具有需求的某些内容
- 返回
- 具有对象返回值的某些内容
- 具有方法返回值的某些内容
- 特性
- 具有特性的某些内容
- 类型
- 具有返回值类型的某些内容
- 具有方法类型的某些内容
- 具有对象类型的某些内容
- 值
- 具有值的某些内容
为您的应用程序组合异常
为您的应用程序创建一个接口或特性,这样您就只能捕获应用程序的异常。
interface YourApplication {
}
创建您的异常
use JBR\Exceptionist\InvalidParser;
class InvalidParserType extends InvalidParser implements YourApplication {
}