3

我目前正在使用ezSQL,我相信它是一个很棒的 SQL 包装器。我的任务是添加分页,我们可以直接加入。Zend有一个,这似乎应该可以工作,因为它与 Zend 的其余部分松散耦合。我正在使用 ezSQL 返回一个数组,阿拉:

$results = $db->get_results("SELECT * FROM table", ARRAY_A);

然后将其转移到分页器:

$paginator = Zend_Paginator::factory($results);

如果 I var_dump($paginator),我会看到查询中列出的值。但是,如果我echo $paginator->pageCount),我得到NULL。这是怎么回事?

不幸的是,对于我们小组来说,从 ezSQL 切换到 Zend_DB 基本上是不可能的,所以这是不可能的。

编辑:输出来自print_r($paginator)

Zend_Paginator Object
(
    [_cacheEnabled:protected] => 1
    [_adapter:protected] => Zend_Paginator_Adapter_Array Object
        (
            [_array:protected] => Array
                (
                    [0] => Array
                        (
                            [first_name] => Doug
                            [last_name] => Lawrence
                            [avatar] => Doug_Lawrence.png
                            [updated_by] => 14306
                            [id] => 413
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-29 12:57:52
                            [publish_date] => 10/29/09
                        )

                    [1] => Array
                        (
                            [first_name] => Jason
                            [last_name] => Lewis
                            [avatar] => Jason.Lewis.jpg
                            [updated_by] => 13547
                            [id] => 411
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-25 09:19:48
                            [publish_date] => 10/25/09
                        )

                    [2] => Array
                        (
                            [first_name] => David
                            [last_name] => Bowman
                            [avatar] => David_Bowman.png
                            [updated_by] => 13564
                            [id] => 409
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-24 15:13:13
                            [publish_date] => 10/24/09
                        )

                    [3] => Array
                        (
                            [first_name] => David
                            [last_name] => Bowman
                            [avatar] => David_Bowman.png
                            [updated_by] => 13564
                            [id] => 410
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-24 15:15:48
                            [publish_date] => 10/24/09
                        )

                    [4] => Array
                        (
                            [first_name] => Greg
                            [last_name] => Morris
                            [avatar] => GKMorris.png
                            [updated_by] => 13555
                            [id] => 408
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-24 10:21:14
                            [publish_date] => 10/24/09
                        )

                    [5] => Array
                        (
                            [first_name] => Thom
                            [last_name] => Rainer
                            [avatar] => Thom_Rainer.jpg
                            [updated_by] => 13560
                            [id] => 405
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-23 06:53:43
                            [publish_date] => 10/23/09
                        )

                    [6] => Array
                        (
                            [first_name] => David
                            [last_name] => Bowman
                            [avatar] => David_Bowman.png
                            [updated_by] => 13564
                            [id] => 406
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-23 16:20:33
                            [publish_date] => 10/23/09
                        )

                    [7] => Array
                        (
                            [first_name] => Tom
                            [last_name] => Harper
                            [avatar] => 1225910432_63
                            [updated_by] => 10843
                            [id] => 402
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-22 11:17:16
                            [publish_date] => 10/22/09
                        )

                    [8] => Array
                        (
                            [first_name] => Jerome
                            [last_name] => Daley
                            [avatar] => Jerome_Daley.png
                            [updated_by] => 13554
                            [id] => 403
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-22 14:06:31
                            [publish_date] => 10/22/09
                        )

                    [9] => Array
                        (
                            [first_name] => Mark
                            [last_name] => Howell
                            [avatar] => Mark_Best.png
                            [updated_by] => 13561
                            [id] => 404
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-22 21:44:51
                            [publish_date] => 10/22/09
                        )

                    [10] => Array
                        (
                            [first_name] => Margaret
                            [last_name] => Marcuson
                            [avatar] => Marcuson.png
                            [updated_by] => 14398
                            [id] => 401
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-21 18:21:55
                            [publish_date] => 10/21/09
                        )

                    [11] => Array
                        (
                            [first_name] => Barry
                            [last_name] => Winders
                            [avatar] => Barry_Winders.png
                            [updated_by] => 13552
                            [id] => 400
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-20 20:08:36
                            [publish_date] => 10/20/09
                        )

                    [12] => Array
                        (
                            [first_name] => Stephen
                            [last_name] => Gray
                            [avatar] => Stephen_Gray.png
                            [updated_by] => 13556
                            [id] => 399
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-20 09:59:16
                            [publish_date] => 10/20/09
                        )

                    [13] => Array
                        (
                            [first_name] => Alan
                            [last_name] => Chandler
                            [avatar] => Alan_Chandler.png
                            [updated_by] => 13549
                            [id] => 398
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-19 12:03:07
                            [publish_date] => 10/19/09
                        )

                    [14] => Array
                        (
                            [first_name] => Mark
                            [last_name] => Howell
                            [avatar] => Mark_Best.png
                            [updated_by] => 13561
                            [id] => 396
                            [title] => 
                            [synopsis] => 
                            [create_date] => 2009-10-17 12:30:16
                            [publish_date] => 10/17/09
                        )

                )

            [_count:protected] => 15
        )

    [_currentItemCount:protected] => 
    [_currentItems:protected] => 
    [_currentPageNumber:protected] => 1
    [_filter:protected] => 
    [_itemCountPerPage:protected] => 5
    [_pageCount:protected] => 3
    [_pageRange:protected] => 10
    [_pages:protected] => 
    [_view:protected] => 
)
4

1 回答 1

4

正如扎克所写,你失踪了

$paginator->setItemCountPerPage(10);
$paginator->setCurrentPageNumber(1);

您可以创建一个视图脚本来呈现分页器控件和分页器中的项目。

比你必须打电话

$paginator->getPages()->pageCount

如果您不使用 Zend_View 并且它是 paginatorControl 视图助手。

于 2009-11-02T21:39:41.603 回答