我继承了一个vo/dao设置(虽然只有一个模型类具有每个类的所有dao函数),但是递归变得很奇怪。
每个用户都有帖子,每个帖子可以有一个视频,但视频也有用户,有时一个帖子没有设置视频。
getPost看起来(部分)像这样:
function getPostById($id) {
$post->name = $row['name'];
$post->video = $this->getVideoById($row['video_id']);
}
video有一个类似的函数来获取它的用户,问题是如果视频没有在post (id=0)中设置,那么它的getUser函数在逻辑上与mysql_fetch_array() expects parameter 1 to be resource, boolean given
一起失败。现在我可以在所有引用其他对象的命令上添加条件,但是在像这样链接V0对象时,有没有其他方法来处理潜在的空值?
您应该从getUser
的结果中获得计数,如果value小于1,我将计算该属性并抛出异常。
然后处理异常,因为代码依赖于方法结果依赖。