Zend Paginator - Как получить первый элемент в paginator? - PullRequest
7 голосов
/ 11 января 2012

У меня есть объект zend paginator, я хочу получить первый элемент в этом paginator.

Я попытался $paginator->getItem(0), но он возвращает сообщение: Message: Cannot seek to 0 which is below the offset 2.И $ paginator-> count () равен 19.

Я могу добиться этого с помощью foreach:

foreach ($paginator as $item)
{
    $entry = $item;
}

Как получить это, не используя foreach?

Ответы [ 3 ]

6 голосов
/ 11 января 2012

Это даст вам первый элемент без использования foreach:

$first = current($paginator->getItemsByPage(1)); // Get the first item
$firstCurrent = current($paginator->getCurrentItems()); // Get the first item of the current pages
1 голос
/ 16 ноября 2015

должно быть

$paginator->getCurrentItems()->current();
0 голосов
/ 06 декабря 2013

Это будет подсчитывать количество вложенных страниц в наборе строк:

$paginator->count();

Это будет подсчитывать общее количество элементов в наборе строк:

$paginator->getTotalItemCount();

Если у вас более 1 подстраницы, может быть, вам нужно использовать второй параметр в getItem(), который является номером подстраницы?

$paginator->getItem(1, 1);

Кстати: getItem() не основан на нуле, поэтому первый элемент в наборе строк - getItem(1).

В моей аналогичной ситуации у меня есть 1 подстраница, и использование $paginator->getItem(1) дает мне правильный результат

...