代码:
$persons = array();
$tags = array();
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
if(!isset($persons[$row["id"]])) {
$persons[$row["id"]]= $row;
$tags[ $row['id'] ] = array();
}
$tags[ $row['id'] ][] = $row['tag'];
}
foreach($persons as $pid=>$p){
$tag1 = $p["tag"];
$tag1ish = $tags[$p['id']];
}
答案 0 :(得分:2)
foreach($persons as $pid=>$p){
$tag1 = $p["tag"];
$tag1ish = $tags[$p['id']];
/* to get the first tag, there are many options e.g.: */
$first_tag = $tag1ish[0]; // given u use [] syntax as above.
}
答案 1 :(得分:1)
答案 2 :(得分:1)
我认为澄清没有多大帮助:P无论如何,我建议按ID(或至少按字母顺序)按顺序订购标签。因此,标签的顺序将是相同的,访问数组的第一个元素将始终返回相同的标记。
答案 3 :(得分:0)
如果我理解得很好,你可以使用reset()函数。它接收一个数组作为参数并返回第一个元素。
答案 4 :(得分:0)
foreach($persons as $pid=>$p){
// is this what you mean..?
$theTagYouWant = $tags[0];
$tag1 = $p["tag"];
$tag1ish = $tags[$p['id']];
}