1

我如何使用 foreach 遍历以下数组,因此它会像这样打印:

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

我一直在挣扎和挣扎,我尝试过双重前奏等,但不知何故我无法让它发挥作用......

有人可以向我解释吗?

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
        )

)
4

2 回答 2

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 />';
}
于 2012-08-17T18:43:29.477 回答
3

简单的

<?php
    foreach($array['product'] as $num => $prod){
        echo $prod." ".$array['date'][$num]." ".$array['time'][$num];
    }
?>
于 2012-08-17T18:44:05.677 回答