Zend Pagination: Как получить массив данных
Я использую Zend Paginator. Я получаю следующую структуру, используя $this->paginator:
(
[_cacheEnabled:protected] => 1
[_adapter:protected] => Zend_Paginator_Adapter_Array Object
(
[_array:protected] => Array
(
[0] => Array
(
)
[1] => Array
(
)
)
[_count:protected] => 8
)
[_currentItemCount:protected] =>
[_currentItems:protected] =>
[_currentPageNumber:protected] => 1
[_filter:protected] =>
[_itemCountPerPage:protected] => 4
[_pageCount:protected] => 2
[_pageRange:protected] =>
[_pages:protected] =>
[_view:protected] =>
)
Я получил доступ к $ this-> paginator, используя цикл for, и все работает нормально. но теперь я хочу получить доступ только к [_array:protected] => значению массива и хочу разделить результат на 3 набора, используя array_slice. Но я не могу получить доступ к значениям этого массива. Я пытался по типу приведение его к массиву, но не получая его.
1 ответ
Решение
На самом деле, Zend_Paginator_Adapter_Array
класс имеет getItems()
метод, который делает именно это: нарезать _array
контейнер.
Поэтому, если вы хотите первую треть набора результатов, вы можете сделать:
$adapter = $paginator->getAdapter();
$results = $adapter->getItems(0, $adapter->count() / 3);