代码之家  ›  专栏  ›  技术社区  ›  Glen Solsberry

带数组的Zend分页

  •  3
  • Glen Solsberry  · 技术社区  · 16 年前

    我正在使用 ezSQL ,我认为这是一个很好的SQL包装器。我的任务是添加分页功能,我们可以直接加入。天顶 has one 似乎它应该工作,因为它与Zend的其余部分松散地耦合在一起。我用ezsql返回一个数组,ala:

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

    然后把这个转移到异教者身上:

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

    如果我 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] => 
    )
    
    1 回复  |  直到 16 年前
        1
  •  4
  •   Goran Jurić    16 年前

    扎克写道,你失踪了

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

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

    比你必须打电话

    $paginator->getPages()->pageCount
    

    如果您不使用Zend_View,它是PaginatorControl视图助手。

    推荐文章