The most effective way to find out if an entity exists in Doctrine 2

I am creating a registration form and want to check if the email is associated with an account. All the ways that I see will create the entire user object, but I just need to know if it exists.

+4
source share
2 answers
public function isUnusedEmail($email) { $em = static::$pimple['em']; $dql = 'SELECT 1 FROM App\Model\User user WHERE user.email = :email'; $query = $em->createQuery($dql); $query->setParameter('email', $email); $res = $query->getResult(); return empty($res); } 
+8
source

Consider the following method:

 /** * @param string $token * @return bool */ public function isTokenUnique($token) { $manager = $this->getEntityManager(); /** @var Doctrine\ORM\Query $query */ $query = $manager-> createQuery('SELECT 1 FROM AppBundle:Member m WHERE m.token = :token') ->setParameter('token', $token) ->setMaxResults(1) ; return (count($query->getResult()) == 0); } 

Note the call setMaxResults() . This may be important in some cases.

+2
source

Source: https://habr.com/ru/post/1397186/


All Articles