我试图在我的函数中调用用户的电子邮件,但我一直得到这个错误:
错误:在非对象上调用成员函数getEmail()
我确信问题不是来自实体,但我很困惑为什么这种方法不工作(我以前用过它,它工作)。
下面是我正在处理的函数:
public function registerAction($email,$password,$token)
{
$em = $this -> getDoctrine();
$user = $em -> getRepository("OBCarsTest2Bundle:user") ->findOneBytoken($token);
if($user == Null)
{
if(strcmp($user->getEmail(),$email) != 0)
{
$newUser = new user();
$factory = $this->get('security.encoder_factory');
$encoder = $factory->getEncoder($user);
$token = md5(uniqid($email, true));
$pass = $encoder->encodePassword($password, $user->getSalt());
$newUser->setEmail($email);
$newUser->setPassword($pass);
$newUser->setIsActive(1); //enable or disable
$newUser->setToken($token);
$UId = $newUser->getId();
}
检查错误。如果$user
是空的,那么$user
就没有getEmail()
。-
if($user != Null)
或
if(!empty($user))