我有一个Entity类,用于映射MySQL数据库中的记录。例如,继承Entity类的类User将映射表用户。
class User extends Entity
{
function init(){ $this->_table = 'user';}
}
当我映射ID为30的对象时,我使用
$user = new User(30);
当对象ID 30不可用时处理的最佳方法是什么(假设它被删除)。
一个解决方案或一组有利弊的解决方案将不胜感激。
答案 0 :(得分:1)
我喜欢在这种情况下使用异常,因为异常可能包含对象不可用的各种原因。一个你不知道的空对象。
答案 1 :(得分:1)
抛出异常意味着您的应用程序中出现异常情况。在我看来,具有特定ID的对象不存在并非特殊情况。我会去返回一个空对象。
抛出/捕获异常的机制伴随着性能损失。
答案 2 :(得分:0)
抛出异常。这样,无论您何时尝试构建User对象,都可以捕获它,并决定在那里做什么。
答案 3 :(得分:0)
我个人更喜欢返回带有错误代码属性的对象。
答案 4 :(得分:0)
在不了解程序设计的情况下很难说,例如这些“ID”的来源,生成方式等。
这里的优点/缺点是基于您的程序设计和您对给定情况的需求。一旦您评估了这些,您就可以确定最适合您的方式。