У меня есть этот массив
$a = [
0 => [
'period' => '2017/2018',
'product' => 'AM',
'quantity_1' => 20,
'quantity' => 25,
],
1 => [
'period' => '2018/2019',
'product' => 'AM',
'quantity_1' => 12,
'quantity' => 19,
],
2 => [
'period' => '2017/2018',
'product' => 'DC',
'quantity_1' => 20,
'quantity' => 25,
],
3 => [
'period' => '2018/2019',
'product' => 'DC',
'quantity_1' => 8,
'quantity' => 10,
]
]
Идея состоит в том, чтобы разделить значения по периодам и по продуктам, в этом случае у нас есть 2 продукта «AM» и «DC».Так что разделите значения от 2018/2019
до 2017/2018
для продукта AM
и для продукта DC
.Мне нужно получить такой результат:
$result = [
0 => [
'product' => 'AM'
'quantity_1' => 12/20 = 0.6
'quantity_2' => 19/25 = 0.76
],
1 => [
'product' => 'DC'
'quantity_1' => 8/20 = 0.4
'quantity_2' => 10/25 = 0.4
]
]
Я пытался использовать foreach, но я думаю, что существуют и другие простые способы сделать это.Если у вас есть идеи, я буду признателен за это.Спасибо за ваше время.
Я пытался так:
$i = 0;
foreach ($results as $result){
$result[] = [
'product' => $result['product'],
'tonnes_prod' => $results[$i+1]['quantity_1'] / $results[$i]['quantity_1']
];
$i++;
}
Но я получаю ошибку: #message: "Notice: Undefined offset: 28"