我有一个创建用户类对象的方法,但是如果找不到用户,我需要返回一些东西,但我不确定是什么:
function getUserById($id)
{
$sth = $this->db->prepare("SELECT id, username, password, salt, email, created, last_active FROM users WHERE id = ?");
$sth->execute(array($id));
$sth->setFetchMode(PDO::FETCH_OBJ);
if ($sth->rowCount() == 0) {
//return what?
}
$row = $sth->fetch();
$user = new User($row);
return $user;
}
该方法应该像这样使用:
$user = $user_mapper->getUserById($id);
问题是如果找不到用户我应该如何处理?我应该使用 try catch 块然后在 rowCount == 0 if 语句中抛出异常,还是在将 $user 变量设置为对象时只返回 false 并使用 if 语句?