我在格式化表时遇到问题。我从查询中得到了一组与此类似的行:
5 23 d
5 23 d
5 23 t
5 24 d
5 24 t
4 23 d
4 23 t
现在,我想在表格中显示它们,但是对类似的数据进行分组,如下所示:
d
5 23 d
t
24 d
t
4 23 d
t
因此5的<td>
为<td rowspan='5'>
,或前23的<td rowspan='3'>
为{{1}}。我怎样才能做到这一点?
我考虑过制作一个多维数组,为每个行跨存储一个数字,但是原来的行集更长,所以我在某个地方迷路了,我想这是一个更简单的解决方案。
答案 0 :(得分:4)
您可以按列值对查询结果进行分组。例如:
$grouped=array();
foreach($rows as $r)
$grouped[ $r[0] ][ $r[1] ][]=$r[2];