php中的多级维度数组

时间:2016-01-29 00:52:39

标签: php arrays

我一直试图弄清楚如何在多维数组上制作一个foreach循环但遗憾的是没有运气,我有下面的数组

$levels = [
        'A' => [
            'xx' => null,
            'yy' => 0
        ],
        'B' => [
            'xx' => 1,
            'yy' => 100
        ],
        'C' => [
            'xx' => 3,
            'yy' => 250
        ],
        'D' => [
            'xx' => 6,
            'yy' => 500
        ]
    ];

xx& yy是表格中的列,我只是尝试为它们分配一些值,如此

foreach ($levels as $level => $info) {
    foreach ($info as $key => $value) {
        Level::create([
             'name' => $level,
             'xx'   => $value,
             'yy'   => $value
         ]);
      }
  }

但这不起作用,它会创建一个重复的条目:(。

1 个答案:

答案 0 :(得分:2)

你不需要内在的foreach。你可以从$ info:

到达xx,yy
foreach ($levels as $level => $info) {
    Level::create([
         'name' => $level,
         'xx'   => $info['xx'],
         'yy'   => $info['yy']
     ]);
}