官方文档:http://www.maatwebsite.nl/laravel-excel/docs/getting-started
关于导入
1.关于中文乱码
Excel::load('filename.csv', function($reader) { }, 'UTF-8');
或者在配置文件 excel.php(在安装这个模块的文档有介绍怎么生成这个文件)
'to_ascii' => false, //主要修复一些乱码
2.导入xlsx文件时只读取第一个sheet并且转化为数组
$data = Excel::load($request->file('file'), 'GB18030', function($reader) { }, 'UTF-8')->all(); $dataArr = $data->first()->toArray();
3.导入的excel里单元格存在换行的数据,要去掉换行字符
str_replace(chr(10),'',str_replace('\n','',$data));
关于导出
1.数据量大时导出超时,可导出为excle能够解析的txt文件,再用excel打开(\t:分隔单元格;\r\n换行)
$str.=$name1."\t".$name2."\r\n";
2.导出中文文件名乱码,使用iconv('UTF-8', 'GBK', '文件名')
$filename = '学生成绩表'; Excel::create(iconv('UTF-8', 'GBK', $filename), function($excel) use ($filename,$data) { $excel->sheet($filename, function($sheet) use ($data) { ... }); })->export('xlsx');
本帖已被设为精华帖!