PHP - 按键逐步执行多维数组

时间:2009-10-29 18:42:23

标签: php arrays multidimensional-array

我有一个SOAP结果集,nuSoap扩展已经变成了一个很好的数组。我确信我可以找到一些很长的方法来循环它以满足我的需要 - 但似乎必须有一种更快的方法来循环遍历特定的数据元素。这是数组:

Array
(
    [xxxResult] => Array
    (
        [NewDataSet] => Array
        (
            [Table] => Array
            (
                [0] => Array
                (
                    [ID] => 472
                    [Name] => abc
                    [Weight] => 0.15
                    [AppID] => 5133356895445
                )

                [1] => Array
                (
                    [ID] => 7396
                    [Name] => def
                    [Weight] => 0.11
                    [AppID] => 51348575554
                )

            )

        )

    )

)

所以我想要做的只是循环通过这样我得到:

<tr>
    <td>[ID]</td>
    <td>[Name]</td>
    <td>[Weight]</td>
    <td>[AppID]</td>
</tr>

...为每个表格行。

似乎应该比[xxxResult] [NewDataSet] [Table] [0] [ID]等更快。

2 个答案:

答案 0 :(得分:4)

喜欢这个吗?

<?php

$tables = $soapResult['xxxResult']['NewDataSet']['Table'];

foreach ($tables as $table) {

?>
    <tr>
        <td><?php echo $table['ID']; ?></td>
        <td><?php echo $table['Name']; ?></td>
        <td><?php echo $table['Weight']; ?></td>
        <td><?php echo $table['AppID']; ?></td>
    </tr>
<?php

}

答案 1 :(得分:0)

像:

 for ($row = 0; $row < 2; $row++){
echo "<tr>";

for ($col = 0; $col < 4; $col++)
{
    echo "<td>".$myarray[$row][$col]."</td>";
}

echo "</tr>";

}

当然,如果行或列的数量发生变化,则需要获得数组的长度。