我有一个用户表,我希望像Stack Overflow用户页面一样显示。所以说显示5条记录然后取一个新行,显示5条记录,取一个新行......
实现这一目标的最佳方式是什么?
答案 0 :(得分:1)
你在谈论一种叫做分页的东西。你可以通过一个指示页码的变量来实现它,并根据它来计算哪些行以及你将从哪一行显示数据。
答案 1 :(得分:1)
如果你想每X次迭代做一些事情,你需要modulo operator %
因此,假设您正在使用表格行,并且您希望每5个项目显示一个新行。您基本上会在<tr>
中包含这些项目,每个项目都在自己的<td>
中。然后,每隔5个项目,您将关闭该行并打开一个新项目:
$str = <<< END
<table>
<tbody>
<tr>
END;
$numItems = count($items) ;
for ($i = 0 ; $i < $numItems) ; $i++) {
$currItem = $items[$i] ;
$str .= "<td>$currItem</td>";
if ($i % 5 == 0) {
$str .= "
</tr>
<tr>" ;
}
}
$str .= "
</tr>
</tbody>
</table>" ;