【发布时间】:2015-03-15 13:21:54
【问题描述】:
我正在编写我正在编写的 Web 服务中的分页功能,但我缺乏数学洞察力现在正在扼杀我。
我有几个键:totalItems、currentItems、currentPage、totalPages,还有几个指向 first、last、previous 和 next 的链接。
此时,我正在做以下计算:
-
totalItems: 表格行数 -
currentItems:limit来自 HTTP 请求的参数 -
currentPage:start参数除以limit参数 -
totalPages:表中的行数除以limit。 (四舍五入,8.1 页 = 9 页)
我认为这些计算是正确的,我正在努力解决的问题如下:
-
first:start参数为 1,limit来自 HTTP 请求 -
last: 应该是最后一页的第一项,如何正确计算? -
previous: 应该是上一页的第一项,怎么办? -
next: 应该是下一页的第一项,怎么办?
我想问的是:我的计算是否正确?以及如何解决last、previous 和next 的三个问题?
【问题讨论】:
-
如何控制分页? U 传递查询字符串或页码中的偏移量?
-
HTTP中的查询字符串是这样的: api?start=x&limit=y 所以开始如果是偏移的item数,limit是每页的item数。
-
然后查看答案,但使用 api?page=X 会更容易
-
@DarkBee 我同意它更容易,不幸的是,我不能在这个项目中使用它。
-
@DarkBee 该问题与查询字符串无关。这是关于计算偏移量。
标签: php pagination