Как установить имена столбцов Excel (заголовки) динамически в laravel? - PullRequest
0 голосов
/ 06 января 2020

Это мои столбцы Excel

$excel_array[$i]['id'] = $value['id'];
$excel_array[$i]['name'] = $value['name'];
$excel_array[$i]['dob'] = $value['dob'];
$excel_array[$i]['mobile_no']=$value['mobile_no'];
$k=0;
foreach($value['child_details'] as $data1){
$excel_array[$i]['child_name'.$k]=$data1['child_name'];
$excel_array[$i]['child_date_of_birth'.$k]=$data1['date_of_birth'];
$k++;
}
$sheet->row($i,$excel_array[$i]);
$i++;

И это мои заголовки столбцов

$excel_array[1] = ['id','name','dob','mobile_no','child_name','child_dob'];
$sheet->row(1,$excel_array[1]); 
$excel->download('xls');   

Я хочу установить заголовки этого столбца динамически на основе дочерних данных ..

Ответы [ 2 ]

0 голосов
/ 06 января 2020

Вы должны создать массив и динамически добавлять в него имена ваших заголовков.

$array = [];
for ($i = 1; $i <= $nbHeaders; $i++) {
    array_push($array, $value);
}
$sheet->row(1,$array);

$ nbHeaders - количество заголовков, которые вы хотите добавить.

https://www.php.net/manual/fr/function.array-push.php

0 голосов
/ 06 января 2020

Попробуйте это

 $sheet->row(1, array(
            'id','name','dob','mobile_no','child_name','child_dob'
        ));
 $excel->download('xls'); 

ссылка ссылка https://docs.laravel-excel.com/2.1/export/rows.html

...