我有一个包含字段的表:id,number,title。它显示销售清单。在一次销售中,可能有几个标题。 我有这段代码:
$todbprod = $mysqli->query('SELECT waybills.waybill_id AS id, waybills.goods_id AS number, nalvmag.name AS title
FROM `waybills`, `nalvmag`
WHERE waybills.goods_id = nalvmag.id ORDER BY waybills.waybill_id');
while($row = $todbprod->fetch_array())
{
echo "sale: ".$row['id']."<br>\n";
echo "product: ".$row['number']."\n";
echo "name: ".$row['title']."<hr>\n";
}
现在输出如下:
- sale 01, title 01
- sale 01, title 02
- sale 01, title 03
- sale 02, title 01
我想提到清单:
- sale 01
- title 01
- title 02
- title 03
- sale 02
- title 01
答案 0 :(得分:2)
假设您的结果集处于销售标题订单中,您可以尝试使用以下逻辑进行打印:
如果我们进行了之前未见过的新销售,请打印该销售 如果在上面打印,请在可能的销售后打印标题。
$sale = NULL;
while ($row = $todbprod->fetch_array())
{
$new_sale = $row['id'];
if ($new_sale != $sale) {
$sale = $new_sale;
echo "sale: ".$sale."<br>\n";
}
echo "name: ".$row['title']."<hr>\n";
}
答案 1 :(得分:0)
$array = array(
array('sale 01', 'title 01'),
array('sale 01', 'title 02'),
array('sale 01', 'title 03'),
array('sale 02', 'title 01')
);
$new = array();
foreach($array as $row){
$new[$row[0]][] = $row[1];
}
echo "<pre>";print_r($new);
$ new包含你想要的数组......