首先在 Laravel 项目根目录下使用 Composer 安装依赖:
composer require maatwebsite/excel
在 config/app.php 中注册服务提供者到 providers 数组:
Maatwebsite\Excel\ExcelServiceProvider::class,
同样在 config/app.php 中注册门面到 aliases 数组:
'Excel' => Maatwebsite\Excel\Facades\Excel::class,
如果想要对 Laravel Excel 进行更多的自定义配置,执行如下 Artisan 命令:
php artisan vendor:publish
执行成功后会在 config 目录下生成一个配置文件 excel.php 。
接下来,创建一个导出类:
php artisan make:export UsersExport --model=User
在 app/Exports 目录下将会生成一个 UsersExport.php 文件,内容如下:
<?php namespace App\Exports; use App\User; use Maatwebsite\Excel\Concerns\FromCollection; class UsersExport implements FromCollection { public function collection() { return User::all(); } }
然后在控制器中就可以调用导出功能:
<?php namespace App\Http\Controllers; use App\Exports\UsersExport; use Maatwebsite\Excel\Facades\Excel; class UsersController extends Controller { public function export() { return Excel::download(new UsersExport, 'users.xlsx'); } }
添加访问路由:
Route::get('users/export/', 'UsersController@export');
备注:要配合 Model 一起使用,并且 config/database.php 文件中必须配置有 connections[mysql] 值,否则调用时会报错:“Database connection [mysql] not configured. ”,详细使用方法可参看官方文档( https://docs.laravel-excel.com/3.1/exports/ )。