我将有一个类 Paginator 和一个方法 getData($limit, $page)。
关于用户的选择,将当前$page 的$_GET 或$_POST 参数和所需的$limit 赋予getData($limit, $page) 方法。
然后我会从数据库中读取所需的行数并将其存储在$result 中。 (总是从最后一个 item id 开始,并将其限制为用户想要查看的行数。就像 SQL 中的limit 30,如果用户想要查看 30 行) em>
之后,读出您刚刚从数据库中提取的最后一行的 id(last item of $result)。将该 id 存储在类似 $lastid 的 var 中。现在您从刚刚从$result 数组的最后一项收到的$lastid 开始。并从数据库中提取接下来的 30 个项目。
我会将页面存储在一个多维数组中。
$pages = array("0"=>array(item1, item2, ... item30),"1"=>array(item31, item32, ... item 60), ...)
这给了你这样的结构:
Array
(
[0] => Array
(
[0] => item1
[1] => item2
[2] => item3
...
[29] => item30
)
[1] => Array
(
[0] => item31
[1] => item32
...
[29] => item60
)
)
要显示我想要的项目,然后只需使用 foreach 循环来生成页面选项卡。
foreach($pages as $page_number => $items){
/* Your code */
}
希望对你有所帮助:)