adamlast / paginate
用于可遍历列表或集合的分页类
0.1.1
2021-06-17 22:09 UTC
Requires
- php: >=8
Requires (Dev)
- phpunit/phpunit: ^9.5
This package is not auto-updated.
Last update: 2024-09-21 12:22:08 UTC
README
简单的分页库,旨在在任意 可遍历 PHP 集合上工作。这可以是一个数组或任何实现了 Iterator 和 Countable 接口的类。
安装
您可以使用 Composer 安装 Paginate。为此,只需在您的 composer.json
文件中要求此包。
{ "require": { "adamlast/Paginate": "^0.1.0" } }
然后运行 composer update
以安装此包。
摘要
有两个组件类
PaginatorService
,它接受集合作为构造参数,并返回一个指定的Page
对象,该对象包含应位于“页面”上的集合项以及关于该页面的相关信息,允许构建如“第1页,共25页”等。
简单示例
use AdamLast\Paginate\PaginationService; $array = ['Dingo', 'Scorpion', 'Snake', 'Shark', 'Jellyfish', 'Spider', 'Cassowary', 'Ant', 'Termite', 'Magpie', 'Kangaroo', 'Dropbear', 'Emu', 'Crocodile', 'Mosquito']; $service = new PaginationService($array, 5); $page = $service->getPage(2); print ("Page ". $page->currentPageNumber() . " of " . $page->numberOfPages(). "\n"); foreach ($page as $k => $item) { print("Item {$k}: {$item} \n"); }
当前待办事项列表
- PaginationService 应尽可能地支持 array_slice。
- 参数检查
- 异常及其单元测试
- 扩展 Page 类以支持
下一页
/上一页
功能 - 更多示例请参阅文档
- 支持传递闭包以启用对集合特定切片的延迟加载(如果支持)。