繁体   English   中英

如何迭代数据并根据其在php中的所属组名称显示

[英]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>&nbsp;</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>&nbsp;</td>
        <td>&nbsp;</td>
    </tr>  
    <?php foreach ($value as $user) { ?>
        <tr>
            <td>&nbsp;</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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM