centralapps/pagination

与PDO交互的分页库

此包的规范存储库似乎已丢失,因此已冻结此包。

1.0.2 2017-02-28 16:57 UTC

This package is not auto-updated.

Last update: 2020-01-20 03:51:53 UTC


README

一组类,用于补充和扩展PHP PDO库,以提供分页支持。

Build Status Total Downloads

这是一个beta版本,可能会发生变化,但它具有功能。

待办事项:调查在准备方法调用中使用\PDO::ATTR_STATEMENT_CLASS以减少项目复杂性的使用。

安装(使用composer)

添加

"centralapps/pagination": "v1.0.0"

到您的composer.json文件中,然后安装

php composer.phar update

## 用法

创建一个分页对象来表示当前页

$pagination = new \CentralApps\Pagination\Pagination();
$pagination->setMaxResultsPerPage(25);
$pagination->setCurrentPageNumber(1);

实例化扩展的Pdo类

$pdo = new \CentralApps\Pagination\Pdo(...)

如果您已经有了扩展的Pdo类,功能在PdoTrait类中可用;尽管随着功能迁移到语句中,这可能会发生变化。

调用prepareWithPagination,将分页对象作为第二个参数传递(驱动选项作为第三个参数可用)

$statement = $pdo->prepareWithPagination($sql, $pagination);

生成的语句是特殊的。它包含分页查询的语句,以及一个统计适用记录总数的语句(以计算页数)。绑定到语句适用于两个语句,执行后,两个语句都会执行,页数存储在自身中。在执行后调用getPaginationWithTotalCount的语句返回原始的分页对象,带有总数。这可以用来生成分页导航栏。