你首先要做的是整理你的数据。首先要对数据分组。您可以通过排序来实现这一点。您可以创建自己的排序函数,然后使用usort函数。
之后,您必须检查最后一个标题,如果不一样,请打印。
$arr = Array(0=>Array("id"=>"1",
"heading"=>"attack",
"name"=>"fire place"),
1=>Array("id"=>"2",
"heading"=>"dog",
"name"=>"second place"),
2=>Array("id"=>"3",
"heading"=>"attack",
"name"=>"he who climbs mountains")
);
usort($arr,function($a,$b) {
return strcmp($a["heading"], $b["heading"]);
});
$lastHeading = "";
foreach ($arr as $row) {
if($lastHeading != $row["heading"])
echo '<h3>'.$row["heading"].'</h3>';
echo '<h5>'.$row["name"].'</h3>';
$lastHeading = $row["heading"];
}