Пересобрать массив, вынести значение в индекс
Есть массив $orders вида:
0 =>
array (size=4)
'id' => string '9' (length=1)
'name' => string 'Персик' (length=12)
'price' => string '16' (length=2)
'id_order' => string '1935669060' (length=10)
1 =>
array (size=4)
'id' => string '9' (length=1)
'name' => string 'Персик' (length=12)
'price' => string '16' (length=2)
'id_order' => string '1935669060' (length=10)
3 =>
array (size=4)
'id' => string '9' (length=1)
'name' => string 'Персик' (length=12)
'price' => string '16' (length=2)
'id_order' => string '1034208938' (length=10)
Как мне id_order вынести в индекс массива, чтобы получилось что-то типа
1935669060 =>
array (size=2)
0 =>
array (size=3)
'id' => string '9' (length=1)
'name' => string 'Персик' (length=12)
'price' => string '16' (length=2)
1 =>
array (size=3)
'id' => string '9' (length=1)
'name' => string 'Персик' (length=12)
'price' => string '16' (length=2)
1034208938 = >
array (size=1)
0 =>
array (size=3)
'id' => string '9' (length=1)
'name' => string 'Персик' (length=12)
'price' => string '16' (length=2)
То есть, чтобы мне потом было удобно вывести товар по номеру заказа.
Ответы (1 шт):
Автор решения: volnistii
→ Ссылка
Разобрался.
foreach ($orders as $order) {
$new_order[$order['id_order']][] = ['id'=>$order['id'], 'name'=>$order['name'], 'price'=>$order['price']];
}