在php视图页中显示数组的数组

pvcm50d1  于 2021-06-23  发布在  Mysql
关注(0)|答案(2)|浏览(363)

我正在从控制器获取数组的结果。这里一个是主数组,“bom\u dt”下面是数组的数组。我知道如何显示主数组,但不确定主数组下的数组。我被困在这里了。请给我一些建议,

Array
    (
        [0] => Array
            (
                [tih_sku] => 10001
                [tih_style] => RHH/110/02
                [tih_color] => BLACK
                [tih_leather] => PERU
                [bom_dt] => Array
                    (
                        [0] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-NO 5, 22.5 CM-*-*-*-*-*-*-*-*-*-*-*-METAL-*-*-*-*-*-*-*-*-*-*-*-*-BLACK-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 2
                                [mi_sku] => RHH/110/02 BLACK
                            )

                        [1] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-NO 3-*-*-*-*-*-*-*-*-*-*-*-NYLON-*-*-*-*-*-*-*-*-*-*-*-*--*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 8.75
                                [mi_sku] => RHH/110/02 BLACK
                            )

                        [2] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-*-BLG-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-MD1-NA-NA-NA-NA-NA-NA-NA-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 1
                                [mi_sku] => RHH/110/02 BLACK
                            )

                        [3] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-*-BLG-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-CCF2-NA-NA-NA-NA-NA-NA-NA-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 1
                                [mi_sku] => RHH/110/02 BLACK
                            )

                        [4] => Array
                            (
                                [mm_spec_fld] => *-*-GROSSGRAIN-GRANITE-*-*-*-*-*-*-*-*-*-----*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 0.9
                                [mi_sku] => RHH/110/02 BLACK
                            )

                    )

            )

        [1] => Array
            (
                [tih_sku] => 10009
                [tih_style] => RHH/110/04
                [tih_color] => BLACK
                [tih_leather] => PERU
                [bom_dt] => Array
                    (
                        [0] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-NO 5, 44.5 CM-*-*-*-*-*-*-*-*-*-*-*-METAL-*-*-*-*-*-*-*-*-*-*-*-*-BLACK-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 1
                                [mi_sku] => RHH/110/04 BLACK
                            )

                        [1] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-NO 3-*-*-*-*-*-*-*-*-*-*-*-NYLON-*-*-*-*-*-*-*-*-*-*-*-*--*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 7.75
                                [mi_sku] => RHH/110/04 BLACK
                            )

                        [2] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-*-BLG-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-FRAME-RECTANGULAR-16MM-NA-NA-NA-NA-PIECES-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 2
                                [mi_sku] => RHH/110/04 BLACK
                            )

                        [3] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-*-BLG-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-R.S.FITTINGS-NA-NA-NA-NA-NA-NA-PIECES-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 2
                                [mi_sku] => RHH/110/04 BLACK
                            )

                        [4] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-*-BLG-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-MD1-NA-NA-NA-NA-NA-NA-PIECES-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 1
                                [mi_sku] => RHH/110/04 BLACK
                            )

                    )

            )

        [2] => Array
            (
                [tih_sku] => 10230
                [tih_style] => RHN/208/02
                [tih_color] => BLACK
                [tih_leather] => OSCAR
                [bom_dt] => Array
                    (
                        [0] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-NO 5, 68 CM-*-*-*-*-*-*-*-*-*-*-*-METAL-*-*-*-*-*-*-*-*-*-*-*-*-BLACK-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 1
                                [mi_sku] => RHN/208/02 BLACK
                            )

                        [1] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-NO 5-*-*-*-*-*-*-*-*-*-*-*-NYLON-*-*-*-*-*-*-*-*-*-*-*-*--*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 17
                                [mi_sku] => RHN/208/02 BLACK
                            )

                        [2] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-NO 3-*-*-*-*-*-*-*-*-*-*-*-NYLON-*-*-*-*-*-*-*-*-*-*-*-*--*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 8
                                [mi_sku] => RHN/208/02 BLACK
                            )

                        [3] => Array
                            (
                                [mm_spec_fld] => *-*-*-*-*-*-BLG-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-BRANDED ADJUSTER-NA-25MM-NA-NA-NA-NA-PIECES-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
                                [tbid_qnty] => 1
                                [mi_sku] => RHN/208/02 BLACK
                            )

                    )

            )

主数组的结果将是对应子数组的公共结果。您能建议如何使用foreach循环在视图页上显示它吗。

ou6hu8tu

ou6hu8tu1#

像下面这样试试

<?php
$var = array(
    array(
        'tih_sku' => '10001',
        'tih_style' => 'RHH/110/02',
        'tih_color' => 'BLACK',
        'tih_leather' => 'PERU',
        'bom_dt' => array(
            array(
                'mm_spec_fld' => 'NO 5, 44.5 CM - METAL - BLACK',
                'tbid_qnty' => '1',
                'mi_sku' => 'RHH/110/04 BLACK',
            ),
            array(
                'mm_spec_fld' => 'NO 3 - NYLON',
                'tbid_qnty' => '7.75',
                'mi_sku' => 'RHH/110/04 BLACK',
            )
        ),
    ),
    array(
        'tih_sku' => '10009',
        'tih_style' => 'RHH/110/04',
        'tih_color' => 'BLACK',
        'tih_leather' => 'PERU',
        'bom_dt' => array(
            array(
                'mm_spec_fld' => 'NO 5, 68 CM - METAL - BLACK',
                'tbid_qnty' => '1',
                'mi_sku' => 'RHN/208/02 BLACK',
            ),
            array(
                'mm_spec_fld' => 'NO 5',
                'tbid_qnty' => '17',
                'mi_sku' => 'RHN/208/02 BLACK',
            )
        ),
    )
);
?>
<?php if(array_filter($var)){ ?>
<style>
table{width:50%;}
td{border:1px solid #999;padding:5px;}
</style>
<table>
    <tr><td>Specification</td><td>Quantity</td><td>Code</td></tr>
<?php
$returnArray = array_map(function($v){ return $v['bom_dt'];},$var);
array_walk($returnArray, function($v2){array_walk($v2, function($v3){
?>
<tr><td><?=$v3['mm_spec_fld'];?></td><td><?=$v3['tbid_qnty'];?></td><td><?=$v3['mi_sku'];?></td></tr>
<?php
});});
?>
</table>
<?php } ?>

demo:https用法:/paiza.io/projects/bhrsiwqi5zxtsmaz7ev0wg?language=php

qv7cva1a

qv7cva1a2#

您可能希望实现raymond nijland提到的嵌套foreach。

<?php foreach ($items as $item): ?>
<tr>
    <th>SKU</th>
    <td><?php echo escape($item['tih_sku']); ?></td>
...
    <th>BOM DT</th>
    <td>

<?php if (count($item['bom_dt]) > 0): ?>
<?php    foreach ($item['bom_dt'] as $bom_dt): ?>

    //display the bom_dt details

<?php    endforeach; ?>
<?php endif; ?>

    </td>
</tr>
<?php endforeach; ?>

有很多方法可以完成上面的示例,但是请检查您正在使用的php框架的文档。如果您不使用php框架,那么您绝对应该实现一些东西来逃避正在写入页面的数据,以保护自己免受攻击。

相关问题