官网地址:https://laravel-excel.com/
laravel excel
是一个基本 laravel
框架的用来操作 excel
的组件,它的是针对 PhpSpreadsheet
的封装,这是我目前用过的最好用的 php excel
组件。
安装
composer require maatwebsite/excel
导出数据示例
定义数据导出类
<?php
namespace App\Exports;
use App\Models\Area;
use App\Models\Order;
use Illuminate\Support\Collection;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithCustomValueBinder;
use Maatwebsite\Excel\Concerns\WithEvents;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Events\BeforeWriting;
use Modules\CAdmin\BO\Cooperator\CooperatorBO;
use Modules\CAdmin\BO\Cooperator\CooperatorCategoryBO;
use Modules\CAdmin\Entities\ImportOrderCheckModel;
use PhpOffice\PhpSpreadsheet\Cell\Cell;
use PhpOffice\PhpSpreadsheet\Cell\DataType;
use PhpOffice\PhpSpreadsheet\Cell\DataValidation;
use PhpOffice\PhpSpreadsheet\Cell\DefaultValueBinder;
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Style\NumberFormat;
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;
use ReflectionClass;
class ImportOrderTemplateExport extends DefaultValueBinder implements FromCollection, WithHeadings, WithEvents, WithCustomValueBinder
{
/**
* 模版字段
*/
const TEMPLATE_COLUMN = [
'城市', // A 0
'订单渠道(一级)', // B 1
'订单渠道(二级)', // C 2
'客户姓名', // D 3
'联系方式', // E 4
'上门时间', // F 5
'服务区域', // G 6
'街道', // H 7
'小区', // I 8
'门牌号', // J 9
'产品', // K 10
'规格', // L
'数量', // M 12
'是否支付', // N 13
'支付时间', // O 14
'实付金额', // P 15
'订单金额', // Q 16
'优惠金额', // R 17
'支付方式', // S 18
'支付周期', // T 19
'备注', // U 20
'师傅姓名', // V 21
'联系方式', // W 22
'服务开始时间', // X 23
'服务结束时间', // Y 24
'是否完成', // Z 25