2

我正在使用 zend 分页器。我通过使用 $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] => 
)


我已经使用 for 循环访问了 $this->paginator 并且一切正常。但现在我只想访问 [_array:protected] => 数组值,并想使用 array_slice 将结果分成 3 组。但我无法访问该数组值。我尝试通过将其类型转换为数组但没有得到它。

4

1 回答 1

6

实际上,Zend_Paginator_Adapter_Array该类有一个getItems()方法可以做到这一点:对_array容器进行切片。

因此,如果您想要结果集的前三分之一,您可以执行以下操作:

$adapter = $paginator->getAdapter();
$results = $adapter->getItems(0, $adapter->count() / 3);
于 2012-08-13T10:17:33.350 回答