LaravelExcel3.0导出的方法
这篇文章主要介绍了Laravel Excel3.0导出的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

成都一家集口碑和实力的网站建设服务商,拥有专业的企业建站团队和靠谱的建站技术,十年企业及个人网站建设经验 ,为成都1000多家客户提供网页设计制作,网站开发,企业网站制作建设等服务,包括成都营销型网站建设,品牌网站设计,同时也为不同行业的客户提供成都网站制作、网站建设的服务,包括成都电商型网站制作建设,装修行业网站制作建设,传统机械行业网站建设,传统农业行业网站制作建设。在成都做网站,选网站制作建设服务商就选创新互联建站。
导出方法抽离:
结束行]
* $columnName 需要合并列 与合并行数结合使用ARRAY存储 ['A','B']
*/
public function __construct($row,$data,$mergeCell=null,$columnName=null,$formatNumber=[])
{
$this->row = $row;
$this->data = $data;
$this->mergeCell = $mergeCell;
$this->columnName = $columnName;
$this->formatNumber = $formatNumber;
}
public function collection()
{
$row = $this->row;
$data = $this->data;
//设置表头
foreach ($row[0] as $key => $value) {
$key_arr[] = $key;
}
//输入数据
foreach ($data as $key => &$value) {
$js = [];
for ($i=0; $i < count($key_arr); $i++) {
$js = array_merge($js,[ $key_arr[$i] => $value[ $key_arr[$i] ] ]);
}
array_push($row, $js);
unset($val);
}
return collect($row);
}
public function registerEvents(): array
{
// TODO: Implement registerEvents() method.
if ($this->mergeCell && $this->columnName){
return [
AfterSheet::class => function(AfterSheet $event){
foreach ($this->columnName as $column){
foreach ($this->mergeCell as $key=>$value){
$event->sheet->getDelegate()->mergeCells($column.$key.':'.$column.$value);
}
}
}
];
}
return [];
}
public function columnFormats(): array{
$formatNumber = [];
foreach ($this->formatNumber as $column){
$formatNumber[$column] = NumberFormat::FORMAT_TEXT;
}
return $formatNumber;
}
}使用:
/*表头表体都为二维数组*/ $row=[['row1'=>'列1','row2'=>'列2']]; /*与表头key对应,缺少数据报错*/ $list=[['row1'=>'行1列1','row2'=>'行1列2'],['row1'=>'行2列1','row2'=>'行2列2']]; /*将第一行到第三行,第五行到第七行的A,B,C列各自合并*/ $mergeCell=[1=>3,5=>7]; $columnName=["A","B","C"]; /*数字过长的列转换格式防止科学计数*/ $formatNumber=['A','B','C']; //上方A,B,C列都为示意,根据自己需求调整,对应EXCEL的列 return Excel::download(new Export($row,$list,$mergeCell,$columnName,$formatNumber),'fileName');
感谢你能够认真阅读完这篇文章,希望小编分享Laravel Excel3.0导出的方法内容对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,遇到问题就找创新互联,详细的解决方法等着你来学习!
网站名称:LaravelExcel3.0导出的方法
文章链接:http://jxjierui.cn/article/ijsdpo.html


咨询
建站咨询
