我的标签显示在正确的顺序内部foreach循环。如何implode在foreach循环中使用array_push的数组
我想逗号分开他们,但我不知道如何。
有没有更好的方式来显示我的标签,而不使用第二个foreach循环?
$people = array();
while($row = mysqli_fetch_array($rs, MYSQLI_ASSOC)){
if(!isset($people[$row["id"]])){
$people[$row["id"]]["id"] = $row["id"];
$people[$row["id"]]["tag"] = $row["tag"];
$people[$row["id"]]["tags"] = array();
}
array_push($people[$row["id"]]["tags"], array("id"=>$row["tags_id"],"tag_name"=>$row["tag"]));
}
foreach($people as $pid=>$p){
echo "(#{$p['id']}) ";
foreach($p["tags"] as $tid=>$t){
echo "<a href='#'>{$t['tag_name']}</a> ";
}
echo "<br><br>";
}
为什么不直接使用'implode()'? –
@Rikudo:内爆多维数组通常不会太好。 –