foreach多维数组

时间:2012-08-17 18:41:50

标签: php arrays foreach multidimensional-array

如何使用foreach循环遍历以下数组,因此它打印如下:

Product1 date1 time1
product2 date2 time2
product3 date3 time3
product4 date4 time4

我一直在苦苦挣扎,我尝试了双重的foreach等,但不知怎的,我不能让它工作......

有人能够向我解释一下吗?

Array
(
    [product] => Array
        (
            [0] => product1
            [1] => product2
            [2] => product3
            [3] => product4
        )

    [date] => Array
        (
            [0] => date1
            [1] => date2
            [2] => date3
            [3] => date4
        )

    [time] => Array
        (
            [0] => time1
            [1] => time2
            [2] => time3
            [3] => time4
        )

)

2 个答案:

答案 0 :(得分:3)

这样的事情应该有效:

$count = count($data['product']);
for ($i = 0; $i < $count; $i ++) {
    echo $data['product'][$i] . ' ' . $data['date'][$i] . ' ' .$data['time'][$i] . '<br />';
}

要为其添加数据验证/完整性(以停止undefined index错误),还要检查子数组中是否存在每个索引:

$count = count($data['product']);
for ($i = 0; $i < $count; $i++) {
    $date = isset($data['date'][$i]) ? ' ' . $data['date'][$i] : '';
    $time = isset($data['time '][$i]) ? ' ' . $data['time '][$i] : '';
    echo $data['product'][$i] . $date . $time . '<br />';
}

答案 1 :(得分:3)

简单

<?php
    foreach($array['product'] as $num => $prod){
        echo $prod." ".$array['date'][$num]." ".$array['time'][$num];
    }
?>