Я пытаюсь экспортировать данные в Excel, используя Fast Excel . Это легко для прямого экспорта. Однако у меня есть следующие данные:
Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => stdClass Object
(
[id] => 1
[name] => name1
[multiple_units] => ["80","103","126","7","10","13"]
)
[1] => stdClass Object
(
[id] => 2
[name] => name2
[multiple_units] => ["30","23","26","7","25","33"]
)
)
)
Где multiple_units
- текстовый столбец с json_decode
. Итак, теперь, когда я пытаюсь экспортировать данные с помощью следующего кода:
public function exportTest()
{
$reviews = DB::table('test_db')->get();
$file_name = 'Review - '.date('Y_m_d').'.xlsx';
return (new FastExcel($reviews))->download($file_name,function($review){
$unit_lists = '';
if($review->multiple_units != NULL){
$unit_ids = json_decode($review->multiple_units, true);
foreach($unit_ids as $uk => $uv){
return [
'Name' => $review->name,
'Units' => $uv
];
}
}
});
}
Он экспортируется в файл Excel, например, как:
Name Units
name1 80
name2 30
Однако я хочу экспортировать, когда каждая единица находится в один ряд. Например,
Name Units
name1 80
name1 103
name1 126
name1 7
name1 10
name1 13
...
...
...
...