У меня есть массив следующим образом:многомерные массив вложенной многомерного массива в PHP
sid sname did dname
1 Basketball 1 Mini
1 Basketball 3 Cadet
2 Baseball 8 Little League
2 Baseball 6 Junior League
1 Basketball 5 Masters
Я пытался получить это и превратить его в гнездовой массив следующим образом:
array('Basketball' => array(
'id' => 1,
'divisions' => array(
1 => 'Mini',
3 => 'Cadet',
5 => 'Masters'
)
),
'Baseball' => array(
'id' => 2,
'divisions' => array(
8 => 'Little League',
6 => 'Junior League'
)
)
);
И Я использую этот цикл foreach, который не работает, он заменяет каждую запись деления, поэтому мне остается только одна запись деления, которая является последней записью.
$result = '';
foreach($row as $r)
{
$result[$r['sname']] = array('id' => $r['sid'], 'divisions' => array($r['did'] => $r['dname']));
}
Этот Еогеасп цикл дает мне этот результат:
array('Basketball' => array(
'id' => 1,
'divisions' => array(
5 => 'Masters'
)
),
'Baseball' => array(
'id' => 2,
'divisions' => array(
6 => 'Junior League'
)
)
);
Я не понимаю, что здесь не так .. может кто-нибудь помочь мне здесь?
+1 Предполагая, что это работает, это довольно элегантное чтение. Конечно, он каждый раз инициализирует значение «id», но это не так дорого. –
BTW ... это работает. благодаря – moleculezz