在php中迭代通过多维数组

时间:2015-11-11 10:16:39

标签: php arrays

我从表格帖子中收到了这个$ photo数组:

Array (
    [274] => Array (
        [10x10] => 0
        [10x15] => 3
        [13x13] => 2
        [13x18] => 0
        [15x15] => 0
        ...
    )
    [273] => Array (
        [10x10] => 1
        [10x15] => 0
        [13x13] => 0
        [13x18] => 0
        [15x15] => 0
        [20x20] => 0
        [20x28] => 2
        [30x30] => 0
        [30x40] => 0
        ...
    )
)

我可以回显此数组,但值为0的字段除外。

<?php
echo "<table>";

foreach($foto as $key=>$value){

    foreach($value as $k => $v){

        if ($v != "0") {
            echo'<tr>';
            echo '<td>'  . $k . '</td>';
            echo '<td>'  . $v . '</td>';
            echo '</tr>';
        }
    }
}
echo "</table>";
?>

这将导致:

10x15   3
13x13   2
10x10   1
20x28   2

但是我也需要数组的id,在这种情况下是274.我盯着这段代码好几个小时,一直在浏览互联网,但我看不到它。如何提取数组的id(274)。

帮助/提示赞赏。

1 个答案:

答案 0 :(得分:2)

试试这个:

<?php
echo '<table>';

foreach ($foto as $key => $value){
    foreach ($value as $k => $v){
        if ($v != "0") {
            echo '<tr>';
            echo '<td>' . $key . '</td>';
            echo '<td>' . $k . '</td>';
            echo '<td>' . $v . '</td>';
            echo '</tr>';
        }
    }
}

echo '</table>';
?>