public function getArticlesForSection($publication, $sectionNumber, $sectionLanguage = null) { $em = $this->getEntityManager(); $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')->createQueryBuilder('a')->where('a.sectionId = :sectionNumber')->andWhere('a.language = :sectionLanguage')->andWhere('a.publication = :publicationId')->setParameters(array('sectionNumber' => $sectionNumber, 'sectionLanguage' => $sectionLanguage, 'publicationId' => $publication)); $qbCount = clone $queryBuilder; $qbCount->select('count(a)'); $articlesCount = $qbCount->getQuery()->getSingleScalarResult(); $query = $queryBuilder->getQuery(); $query->setHint('knp_paginator.count', $articlesCount); return $query; }