你的位置:首页 > 信息动态 > 新闻中心
信息动态
联系我们

Laravel如何导出excel文件【PHPer菜菜的PHP技术分享篇】

2021/12/17 15:09:01

直接上代码:

\Excel::create('excel文件名', function ( $excel ) use ( $data, $headName) {
            $excel->sheet('设置sheet名称', function ( $sheet ) use ( $data, $headName ) {
                //设置头部 合并单元格
                $sheet->cell("A1", '设置表头');
                $sheet->mergeCells('A1:I1');//从A1到I1合并单元格
                //先设置头部
                $letter = "A";
                foreach($headerName as $name){
                    $sheet->cell("{$letter}2", $name);//设置单元格表头
                    $sheet->setWidth("{$letter}", 30);//设置单元格宽度
                    $letter++;//字母会依次递增ABCDE....
                }
                $sheetDataStart = 3;
                $letter = "A";
                foreach ($data as $p => $v) {
                    foreach($v as $val){
                        $sheet->cell("{$letter}{$sheetDataStart}", $v);//把一行依次填满
                        $letter++;
                    }
                    $sheetDataStart++;
                }
                $f = 'A1:I'.($models->count()+2);
                $sheet->cells($f,function($cells) { //$f是范围。匿名函数设置左对齐
                    $cells->setAlignment('left');
                });
            });
        })->download('xlsx');//如果通过http请求来访问的话,就会下载excel文件
 //也可以将->download('xlsx')替换成->store('xls')->export('xls')
 //这会在storage/export目录下生成你的excel文件