【发布时间】:2021-04-27 07:05:16
【问题描述】:
我有一个简单的数组,其中包含一些要在 html 表中显示的产品。 数组
Array
(
[0] => Array
(
[item] => Hp-Probook
[opening_qty] => 2
[sold] => 10
)
[1] => Array
(
[item] => Hp-5420s
[opening_qty] => 8
[sold] => 4
)
[2] => Array
(
[item] => Dell-Inspiron
[opening_qty] => 15
[sold] => 10
)
[3] => Array
(
[item] => MacBook-Air-Pro
[opening_qty] => 2
[sold] => 10
)
[4] => Array
(
[item] => MacBook-Pro
[opening_qty] => 2
[sold] => 1
)
)
这里我需要在表格中单独显示一些指定的产品,例如mac-book系列的Like
| name | qty | sold |
-----------------------------------
| Hp-Probook | 2 | 10 |
| Hp-5420s | 8 | 4 |
| Dell-Inspiron | 15 | 10 |
-----------------------------------
| Total | 25 | 24 |
-----------------------------------
|MacBook-Air-Pro | 5 | 5 |
| MacBook-Pro | 2 | 1 |
-----------------------------------
| total | 7 | 6 |
我尝试从第一个 foreach 和总行之后取消设置特定值 make next foreach
<?php
$totalQty = 0;
$totalSold = 0;
foreach ($product as $key=>$value) {
if($value['item'] =='MacBook-Air-Pro'||$value['item'] =='MacBook-Pro') {
unset($product[$key]);
}
?>
<tr>
<td><?php echo $value['item'] ?></td>
<td><?php echo $value['opening_qty'] ?></td>
<td><?php echo $value['sold'] ?></td>
</tr>
<?php $totalQty += $value['opening_qty']; $totalSold += $value['sold'];?>
<?php } ?>
<tr>
<td>Total</td>
<td><?php echo $totalQty; ?></td>
<td><?php echo $totalSold; ?></td>
</tr>
这显示所有产品,就像普通的 foreach 和 Unset 甚至都不起作用,混淆在下一个 foreach 中显示已删除(未设置)的行。 有任何替代方法可以做到这一点 谢谢,
【问题讨论】: