diff --git a/src/Kdyby/Doctrine/EntityRepository.php b/src/Kdyby/Doctrine/EntityRepository.php index 135611f6..0ad0fd2f 100644 --- a/src/Kdyby/Doctrine/EntityRepository.php +++ b/src/Kdyby/Doctrine/EntityRepository.php @@ -71,6 +71,24 @@ public function findOneBy(array $criteria, array $orderBy = null) } + /** + * @param array $criteria + * @return bool + */ + public function exists(array $criteria = []) + { + try { + return (bool) $this->createQueryBuilder('e') + ->whereCriteria($criteria) + ->select('1') + ->setMaxResults(1) + ->getQuery()->getSingleScalarResult(); + + } catch (NoResultException $e) { + return false; + } + } + /** * @param array $criteria