Laravel Excel 下载合并单元格
总是被固有思维拌出的我,今天冲出了舒适区解决这个合并单元格的问题。
需求如下
在各大网站搜索总是找不到合适的处理方式,最后翻了好久终于找到了。说啥都得记录一下。话不多少上代码
public function exportExcel()
//$course_list 需要打印的课程列表
$course_list = [];
$filename = '结算账单' . date('Y-m-d H_i');
Excel::create($filename, function($excel) use ($course_list) {
$data[] = ["结算账单"];
$data[] = ['收入来源:课程结算'];
$data[] = ['结算周期:2019.09-2019.10';
$data[] = ['结算时间:2019.09.25'];
$data[] = ['课程名称', '课程ID','主讲人','主讲人uid','价格(¥)', '会员总数', '获利金额(¥)'];
foreach ($course_list as $key=>$course) {
$data[] = $item_info;
}
$excel->sheet('课程结算账单', function ($sheet) use ($data, $width_list) {
//第一行到第四行合并单元格
$sheet->mergeCells("A1:G1");
$sheet->mergeCells("A2:G2");
$sheet->mergeCells("A3:G3");
$sheet->mergeCells("A4:G4");
//第一行标题居中、加粗、设置字符大小
$sheet->cells("A1:G1", function ($cells) {
$cells->setAlignment('center');
$cells->setFontWeight('bold');
$cells->setFontSize(20);
});
//子标题文字居中、背景色设置、加粗
$sheet->cells("A5:G5", function($cells) {
$cells->setAlignment('center');
$cells->setBackground('#C8EAFF');
$cells->setFontWeight('bold');
$cells->setFontSize(16);
});
//剩下单元格设置
$sheet->fromArray($data, null, 'A1', false, false)->setFontSize(16);
});
})->export('xlsx');
}
再次感谢前人的文档贡献,让我解决了问题。这是一个很好的原创文档,特别感谢。
想要学习参考那篇文章猛点这里