本文整理汇总了PHP中Doctrine\Common\Collections\ArrayCollection::getPageCount方法的典型用法代码示例。如果您正苦于以下问题:PHP ArrayCollection::getPageCount方法的具体用法?PHP ArrayCollection::getPageCount怎么用?PHP ArrayCollection::getPageCount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Doctrine\Common\Collections\ArrayCollection
的用法示例。
在下文中一共展示了ArrayCollection::getPageCount方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setComments
protected function setComments($sourceId)
{
$qb = $this->em->getRepository('MDSSiteBundle:Comment')->createQueryBuilder('comment');
if ($sourceId) {
//TODO Не знаю зачем мне тут нужен был сурс, удалить потом ?
//$source = $this->em->getRepository('MDSSiteBundle:Source')->findBy(array('id' => $sourceId));
$commQuery = $qb->innerJoin('comment.source', 'source')->where('source.id =:sourceid')->setParameter('sourceid', $sourceId)->orderBy('comment.id', 'DESC')->getQuery();
} else {
//Если не сурсId, то постим news
$commQuery = $qb->where('comment.name =:comname')->setParameter('comname', 'news')->orderBy('comment.id', 'DESC')->getQuery();
}
/** @var Paginator $paginator */
$paginator = $this->getService('knp_paginator');
$page = $this->request->request->get('page');
$page = $page ? $page : '1';
$comments = $paginator->paginate($commQuery, $page, 10);
/* нет коментов - пишем заглушку */
if (!$comments->getTotalItemCount()) {
$comments = new ArrayCollection();
$comment = new Comment();
$comment->setName('admin');
$comment->setText('Добрых слов пока не нашлось');
$comments->add($comment);
/* если вызываемая страница больше чем их количество */
} else {
$this->pages = $comments->getPageCount();
if ($this->pages < $page) {
return false;
}
}
$this->comments = $comments;
}