安装
PhpExcel 已停止维护,laravel-excel目前已更新至3.1版本,虽然很方便,但对于复杂样式的Excel导出还是没有太多办法.特别是需要导出给别的软件导入用的,必须要遵循对方的模板的情况…
laravel-excel中使用的是PhpOffice,可以说是PhpExcel的后续版本,提供了非常全面的样式操作. 在laravel下面方便的用户法就是直接先安装laravel-excel,然后使用PhpOffice\PhpSpreadsheet\Spreadsheet来解决复杂的导出.
composer require maatwebsite/excel
编程实现
组织
实际应用中,一般是不止导出一种格式的Excel文件的,所以建议建立一个Exports目录,所有导出类都放这里,每一个类负责一种格式导出.
<?php
namespace App\Exports;
class UserExport
{
protected $prarm;
protected $filename;
public function __construct($prarm,$filename)
{
$this->param = $param;
$this->filename = $filename;
}
public function outExcel()
{
//通过参数$param获取需要导出的数据
$data = User::where(' .... ')->get();
//TODO 开始各种样式编辑
}
}