我正在尝试使用PHP Activerecord测试是否存在包含以下代码的记录:
class User extends ActiveRecord\Model {
public function user_exists() {
$user = User::find_by_email($this->email);
if ( $user ) {
return true;
} else {
return false;
}
}
}
$user = new User();
$user->email = "test@email.com";
if ( $user->user_exists() ) {
echo "user exists";
} else {
echo "no user";
}
出于某种原因,我收到了“调用未定义的方法:find_by_email”错误。我做错了什么?
答案 0 :(得分:1)
尝试exists
方法:
User::exists(array('email' => $this->email));
哪个更快,因为它只检查存在但不获取数据。
甚至更好;使用模型验证:
http://www.phpactiverecord.org/projects/main/wiki/Validations#validates_uniqueness_of