PHP打印嵌套数组foreach

时间:2017-04-12 08:59:21

标签: php arrays

我有以下数组,我想让用户可读:

Array
(
    [3] => Array
        (
            [id] => 3
            [price] => 4.00
            [per] => day
            [count] => 
            [type] => single
            [status] => T
            [extra_quantity] => 1
        )

    [2] => Array
        (
            [id] => 2
            [price] => 12.00
            [per] => day
            [count] => 
            [type] => single
            [status] => T
            [extra_quantity] => 1
        )

)

我想回应一下,向用户展示每个子阵列的以下可读行:

[id] = [price] per [day]

我对数组很新,尤其是嵌套的数组,就像我上面那样,我应该如何使用它来获得我需要的输出?谢谢!

3 个答案:

答案 0 :(得分:2)

使用内置函数foreach()帮助您将所有数据视为可读

    foreach ($rows as $row) {
            echo $row['price'].'per'.$row['per'];
            echo "<br>";
        }

检查更多信息

http://php.net/manual/en/control-structures.foreach.php

答案 1 :(得分:1)

在迭代数组时使用FOreach循环。上面是一个多维数组。含义数组中的数组

  foreach($array as $value):
    if(array_key_exists($value['id'], $value) && array_key_exists($value['price'], $value) && array_key_exists($value['per'], $value)):
     #we have the keys present.
     echo $value['price'].'per'.$value['per'];
    endif;
    endforeach;

答案 2 :(得分:0)

必须比两个foreach循环更优化,

list($id,$price, $day) = [array_column($your_arr, 'id'),array_column($your_arr, 'price'),array_column($your_arr, 'day')];
foreach($id as $k => $v)
{
    echo $v ." = ".$price[$k]." per ". $day[$k];    
}

array_column返回输入数组中单个列的值。

我希望这会有所帮助。