Hi devs
我有一个简单的PHP OO项目。我有一个例外,他出现了 2 次。像这样:
if (!$x) {
throw new Exception("Don't use this class here.");
}
我想开发一个类以便像这样编辑此代码:
if (!$x) {
throw new ClassUsageException();
}
如何使用默认异常消息开发 Excpetion 类?
谢谢
我建议谨慎地创建新的异常类。左右检查大量异常并不好玩。如果你真的觉得有必要,检查已经定义了哪些类型的异常,以及你的异常在该层次结构中的位置,然后扩展该类,即让开发人员有机会捕获(有意义的)范围的异常,而不必显式地编写一个接一个的捕获块。
我真的不确定你想用Don't use this class here.
实现什么,但它可能是一个 InvalidArgumentException(或者从该异常派生的东西,如果你真的必须的话)。但是,还有其他机制可以防止特定位置的某个类的实例。
您可以扩展Exception
类
<?php
Class ClassUsageException extends Exception {
public function __construct($msg = "Don't use this class here.", $code = 0) {
parent::__construct($msg, $code); //Construct the parent thus Exception.
}
}
try {
throw new ClassUsageException();
} catch(ClassUsageException $e) {
echo $e->getMessage(); //Returns Don't use this class here.
}