[英]How to iterate data and display as per their belonging group name in php
我正在从数据库中选择数据并显示在表中,但现在我想按其代理名称显示所有数据,并平衡与其他表关联的代理的余额。
Customer Table
id agent_id
1 5
2 5
3 6
Balance table
id agent_id bal_amt
1 5 25000
2 6 7000
但是我想以如下格式显示,这意味着我想在行中显示座席名称,并在列中显示与座席名称相关的其余数据
预期结果
Agentname category subcategory balance
ABC 25000
Ring plastic
Node fibre
test rassi
XYZ 7000
sofa rod
mate code
下面是我的代码
<?php
$finalArray = [];
foreach ($customerlist as $user) { print_r($user);exit;
$finalArray[$user['agent']['name']][] = $user;
}
foreach ($finalArray as $key => $value) {
?>
<tr>
<td colspan="7"><?php echo $key; ?></td>
<td colspan="2">25000</td>
</tr>
<?php foreach ($value as $user) { ?>
<tr>
<td> </td>
<td><?php echo $user['product']['name']; ?></td>
<?php }} ?>
要实现此目的,需要首先将一个代理中的所有条目分组,然后遍历这些条目以获得所需的输出。 试试这个代码:
<?php
$finalArray = [];
foreach ($customerlist as $user) {
$finalArray[$user['agent']['name']][] = $user;
}
foreach ($finalArray as $key => $value) {
?>
<tr>
<td><?php echo $key; ?></td>
<td> </td>
<td> </td>
</tr>
<?php foreach ($value as $user) { ?>
<tr>
<td> </td>
<td><?php echo $user['product']['name']; ?></td>
<td><?php echo $user['subproduct']['name']; ?></td>
</tr>
<?php
}
}
?>
在这里,第一个tr
将显示Agent Name
而在foreach
循环中的其他tr
将显示到该座席的条目。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.