PHP如何探索多维数组

时间:2017-04-13 18:34:10

标签: php arrays multidimensional-array

我已经阅读了高级帮助,对不起,但我不明白这个编辑器!!!

我创建了一个多维的:

[YYY] => Array
     (
         [0] => 11.12
         [1] => 22.775000000
         [2] => 33.895
         [AABB] => Array
             (
                 [0] => 22.12
                 [1] => 12.23000000
                 [2] => 23.895
             )
     )
[ZZZ] => Array
     (
         [0] => 1.12
         [1] => 33.775000000
         [2] => 44.895
         [NNNN] => Array
             (
                 [0] => 23.30
                 [1] => .000000000
                 [2] => 997.3
             )

YYY和ZZZ是主要的'记录。 YYY确实有一个子记录AABB,而ZZZ确实有一个子记录NNNN。在此示例中,它们只有一个子记录,但每个主记录可以有一个或多个子记录。

结果应该是这样的(抱歉,我不理解编辑器,虽然如果我阅读它应该与| s和-s ???一起使用的高级帮助):

    <table>
<tr>
<th> kolom 1</th><th>Kolom 2</th><th>Kolom 4</th><th>Kolom 4</td>
</tr>
<tr>
<td>YYY</td><td>11.12</td><td>22.775000000</td><td>33.895</td>
</tr>
<tr>
<td>- AABB</td><td>22.12</td><td>12.23000000</td><td>23.895</td>
</tr>
<tr>
<td>ZZZ</td><td>1.12</td><td>33.775000000</td><td>44.895</td>
</tr>
<tr>
<td>- NNNN</td><td>23.30</td><td>.000000000</td><td>997.3</td>
</tr>
</table>

我希望很清楚我想要什么。抱歉布局,但我不明白这个编辑器是如何工作的。

我正在尝试使用foreach循环(我已将其简化,以使其更清晰):

foreach($aMarktWaardeExposure as $sLevel3 => $aLevel4) { 
        echo '<td><strong>'.$sLevel3.'</strong></td>'; //main record
        foreach($aLevel4 as $sLevel4) { 
                echo $sLevel4.'<br />'; //Sub record
        } 
}

我希望有人可以帮助我。

谢谢,

尼科

1 个答案:

答案 0 :(得分:0)

也许是这样的:

    <?php 

$array = [
    'YYY' => [
        0 => 11.12,
        1 => 22.775000000,
        2 => 33.895,
        'AABB' => [
            0 => 22.12,
            1 => 12.23000000,
            2 => 23.895,

        ]
    ], 
    'ZZZ' => [
        0 => 1.12,
        1 => 33.775000000,
        2 => 44.895,
        'NNNN' => [
            0 => 23.30,
            1 => .000000000,
            2 => 997.3
        ]
    ]
];
?> 
<style type="text/css">
table td{
    border: 1px solid red;
}
</style>

<table>
    <?php foreach($array as $row): ?>
        <tr>
            <?php foreach($row as $cell): ?>
                <td>
                    <?= is_array($cell) ? implode('<br>', $cell) : $cell ?>
                </td>
            <?php endforeach; ?>
        </tr>
    <?php endforeach; ?>
</table>

输出:

    <table>
    <tbody>
        <tr>
            <td>11.12</td>
            <td>22.775</td>
            <td>33.895</td>
            <td>22.12<br>12.23<br>23.895</td>
        </tr>
        <tr>
            <td>1.12</td>
            <td>33.775</td>
            <td>44.895</td>
            <td>23.3<br>0<br>997.3</td>
        </tr>
    </tbody>
</table>