这真是一个通用的分页问题.您的数据是存储在数据库中还是存储在CSV文件中无关紧要.
只需通过查询字符串或URL重写将一些偏移参数传递给PHP脚本,并使用它来仅选择CSV列表的一部分.
像这样:/big-table.php?page = 3.
// Getting passed argument.
$pageNumber = (int) $_GET['page'];
// Items per page default.
$itemsPerPage = 100;
// Calculating offset.
$offset = ($pageNumber - 1) * $itemsPerPage;
然后使用$offset和$itemsPerPage通过限制CSV解析循环的范围来仅检索部分CSV文件.
您还可以将每页的项目值作为参数传递给脚本,以便从Web界面控制此值.例如,如果要创建一个下拉菜单,可以选择每页10,50,100项等.
如果你想要它 – 你总是可以使用AJAX动态获取更多项目,它不会真正影响你的分页实现服务器端,只有输出格式(JSON而不是HTML).
当然数据库实现会更快,我建议尽可能选择它.和/或者您可以使用一些缓存层来加快速度.