这是$result
...
我正在使用mysql_fetch_array()
创建一个循环函数while($row = mysql_fetch_array($result)) {
$temp_id = $row['id'];
while($temp_id == $row['id']) {
if($temp_id == $row['id']) {
mysql_fetch_array($result);
}
$temp_id = $row['id'];
echo $row['name'].",";
}
echo "<br/>";
}
这样可行,但问题是,mysql_fetch_array会在id转换过程中跳转其中一个值。
我希望这些值与这些
相同a
b,c,d
e
我的问题是,是否有一个简单的回绕功能,只能在行中执行一次?
我搜索了mysql_data_seek()
,但我认为这需要额外的控制变量,如$i
来定位地址..
谢谢..任何建议和功能样本都会非常棒!
答案 0 :(得分:0)
首先使用一个带mysql_fetch_array
的循环来创建行数组。然后,遍历行本身。
根据您的问题的更新,您似乎希望在查询中使用GROUP_CONCAT
,但您仍然可以在PHP中执行此操作:
$rows = array();
while($row = mysql_fetch_assoc($result)) {
if (!isset($rows[$row['id']]) {
$rows[$row['id'] = array();
}
$rows[$row['id']][] = $row['name'];
}
foreach ($rows as $row) {
echo implode(',', $row) . "<br>";
}
答案 1 :(得分:0)
试试此代码
while($row = mysql_fetch_array($result)) {
$temp[$row['id']][] = $row['name'];
}
foreach($temp as $row) {
echo implode(',', $row) . '<br/>';
}