zf2 paginator count total

JI-*_*Web 2 php pagination zend-framework2

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

$totalCount = $pagintor->count() * $paginator->getItemCountPerPage();
Run Code Online (Sandbox Code Playgroud)

我的问题与paginator用于获取记录总数的count()过程有关.

我已经看到了这个:Zend Framework 2 - 分页 并阅读这些文档 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);
Run Code Online (Sandbox Code Playgroud)

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

最终的结果可能是'总共4536的记录',其中4536总数.

提前谢谢了.

ENV:ZF 2.3.9(不是2.4+)

小智 11

听起来像你想要totalItemCount.

$paginator->getTotalItemCount();
Run Code Online (Sandbox Code Playgroud)