栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

laravel中maatwebsite/excel导入导出

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

laravel中maatwebsite/excel导入导出

一:引入类库

composer require maatwebsite/excel

二:添加服务【config/app.php】

'providers' => [
	//数组中引入以下类库
	MaatwebsiteExcelExcelServiceProvider::class,
],

'aliases' => [
	'Excel'        => MaatwebsiteExcelFacadesExcel::class,
],

三:控制器引入excel类

use MaatwebsiteExcelFacadesExcel;

//导出
//$data:导出数组,数组元素按导出列的顺序排列
public function export($data)
{
	//表头
    $header[] = ['A1','B1','C1', 'D1'];
    //组合导出数据
    $exportData = array_merge($header, $list);
    return Excel::create('导出数据', function ($excel) use ($exportData) {
            $excel->sheet('sheet1', function ($sheet) use ($exportData) {
                $sheet->rows($exportData);
                $sheet->setWidth('A',20);//设置单个列宽
                $sheet->setWidth(['A' => 20, 'B' => 10]);//设置多个列宽
                $sheet->setHeight(1, 10);//设置单个行高
                $sheet->setHeight([1 => 10, 2 => 15]);//设置多个行高
                $sheet->mergeCells('A1:A2');//合并单元格
                $sheet->setMergeColumn([
                    'columns' => ['A', 'B', 'C'],
                    'rows'    => [
                        [2, 3],
                        [4, 5],
                    ],
                ]);
                foreach ($exportData as $key => $value)
                {
                	//当前行,B列内容==详情的单元格
                    if ($value['B'] == '详情')
                    {
                    	//设置指定单元格
                        $sheet->cell('B'.$key, function($row) {
                            $row->setBackground('#CCCCCC');//背景色
                            $row->setAlignment('center');//水平居中
                            $row->setValigment('center');//垂直居中
                            $row->setValue('详情');//设置单元格内容
                            $row->setFontColor('#fff');//字体颜色
                            $row->setFontFamily('Calibri');//字体
                            $row->setFontSize(16);//字体大小
                            $row->setFontWeight('bold');//粗体
                            $row->setFont([
                                'family' => 'Calibri',
                                'size'   => 16,
                                'bold'   => true,
                            ]);
                        });
                    }
                }
            })->export('xlsx');
        });
}

//导入文件
public function load()
{
	$filePath = "storage/exports/".iconv("UTF-8", "GBK", "file").".xls";
	Excel::load($filePath);
	//导入,回调,可选
	Excel::load($filePath, function($reader){
   		$data = $reader->all();
   		//$reader = $reader->getSheet(0);
        //$res = $reader->toArray();
        dd($data);
	});
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1014322.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号