У меня есть набор результатов, который запрашивается из базы данных.
$promotions = array(
array('goods_num' => 2, 'promotion_type' => 'General goods', 'date' => '2020-02-04',),
array('goods_num' => 1, 'promotion_type' => 'Discount', 'date' => '2020-02-04',),
array('goods_num' => 1, 'promotion_type' => 'Flash sale', 'date' => '2020-02-04',),
array('goods_num' => 10, 'promotion_type' => 'Discount', 'date' => '2020-02-05',),
array('goods_num' => 10, 'promotion_type' => 'General goods', 'date' => '2020-02-05',),
array('goods_num' => 9, 'promotion_type' => 'Flash sale', 'date' => '2020-02-05',),
array('goods_num' => 2, 'promotion_type' => 'Flash sale', 'date' => '2020-02-06',),
array('goods_num' => 1, 'promotion_type' => 'General goods', 'date' => '2020-02-06',),
array('goods_num' => 2, 'promotion_type' => 'General goods', 'date' => '2020-02-06',),
array('goods_num' => 1, 'promotion_type' => 'General goods', 'date' => '2020-02-07',),
array('goods_num' => 2, 'promotion_type' => 'Flash sale', 'date' => '2020-02-07',),
array('goods_num' => 3, 'promotion_type' => 'Discount', 'date' => '2020-02-07',),
);
И я хочу показать его в виде диаграммы. как это demo , я хочу преобразовать вышеупомянутый массив в этот формат:
array(
0 => array(0 => 'date', 1 => '2020-02-04', 2 => '2020-02-05', 3 => '2020-02-06', 4 => '2020-02-07',),
1 => array(0 => 'General goods', 1 => 2, 2 => 10, 3 => 3, 4 => 1,),
2 => array(0 => 'Discount', 1 => 1, 2 => 10, 3 => 0, 4 => 3,),
3 => array(0 => 'Flash sale', 1 => 1, 2 => 9, 3 => 2, 4 => 2,),
);
Первая строка - это дата оси X, после этого - сумма goods_num. в дату каждой акции.
Я пытался использовать два цикла foreach для обработки, но я не мог получить желаемый результат. спасибо всем