【问题标题】:zf2 paginator count totalzf2 分页器总数
【发布时间】:2015-09-25 15:25:03
【问题描述】:

如何通过 Zend Pagintor 检索使用 count() 找到的项目总数,而不是页数? 当前的测试在不使用 DBSelect 计数方法的情况下得出了最接近的近似值:

$totalCount = $pagintor->count() * $paginator->getItemCountPerPage();

我的问题与分页器用来获取记录总数的 count() 过程有关。

我看过这个:Zend Framework 2 - Pagination 并阅读这些文档 http://framework.zend.com/manual/current/en/modules/zend.paginator.advanced.html

http://framework.zend.com/manual/current/en/modules/zend.paginator.usage.html

我们是否要为分页对象自定义 count() 方法只是为了根据最后一个链接获取计数?

class MyDbSelect extends Zend\Paginator\Adapter\DbSelect
{
    public function count()
    {
        $select = new Zend\Db\Sql\Select();
        $select->from('item_counts')->columns(array('c'=>'post_count'));

        $statement = $this->sql->prepareStatementForSqlObject($select);
        $result    = $statement->execute();
        $row       = $result->current();
        $this->rowCount = $row['c'];

        return $this->rowCount;
    }
}

$adapter = new MyDbSelect($query, $adapter);
$paginator = new Zend\Paginator\Paginator($adapter);

也许我错过了一些东西(可能是真的......)但是由于分页对象已经麻烦编译一个“计数”,为什么/如何在不做任何其他障碍或障碍课程的情况下访问这个数字。 .. 是否有 $paginator->getTotalCount() 方法可以访问此变量...

最终结果可能类似于“总共 4536 条记录的 20 条记录”,其中总共 4536 条。

非常感谢。

ENV:ZF 2.3.9(不是 2.4+)

【问题讨论】:

    标签: php pagination zend-framework2


    【解决方案1】:

    听起来你想要 totalItemCount。

    $paginator->getTotalItemCount();
    

    【讨论】:

    • 谢谢,好像就是这样...我在任何地方都找不到它...至少现在我永远不会忘记它!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多