findBy'Field'匹配上怎么逻辑?

How to perform logic if findBy’Field’ does match?

如果我输入的表单电子邮件与数据库中找到的匹配,我会尝试做一些逻辑。

如果 findBy'Field” returns 是整个集合,而不仅仅是我要比较的字段,我该如何进行比较?我认为它应该在不使用 foreach 循环的情况下完成,因为这会破坏使用我的 findBy 方法的目的。

一个例子:

$formEmail = $form->get('email')->getData();

existingEmail = $em->getRepository(‘UserBundle:User’)->findOneByEmail($formEmail);
// or existingEmail = $em->getRepository(‘UserBundle:User’)->findByEmail($formEmail);

if ($formEmail == $loggedEmail){
    //perform some logic here
}

试试这个

$formEmail = $form->get('email')->getData();

$existingEmail = $em->getRepository('UserBundle:User')->findOneByEmail($formEmail);

if ($existingEmail){
    //found
}else{
    //not found
}