laravel7 数据库数据导出至 xlsx
网址参考:
https://learnku.com/articles/32391
1:安装excel插件
安装方式
composer require maatwebsite/excel
2:excel 导出
新建导出文件,导入导出业务代码尽量不要和原来业务耦合。我们拿 UserModle模块举例
php artisan make:export UsersExport --model=UserModle
3会在 app 目录下创建 Exports 目录 UsersExport.php 代码内容如下
<?php namespace App\Exports; use App\Models\UserModle; use Maatwebsite\Excel\Concerns\FromCollection; class UsersExport implements FromCollection { /** * @return \Illuminate\Support\Collection */ public function collection() { return UserModle::all(); } }
4业务控制器中调用,并引入xlsx导入,并书写导入方法
<?php namespace App\Http\Controllers\admin; use App\Http\Controllers\Controller; use App\models\Node; use Illuminate\Http\Request; //引入xlsx use App\Imports\UsersImport; //引入xlsx导入 use Maatwebsite\Excel\Facades\Excel; use App\Exports\UsersExport; class Index extends Base { //数据库数据导入至xlsx表格 public function export() { // 定义一个文件名: $fileName='user'.date('Y-m-d H:i:s').'user.xlsx'; return Excel::download(new UsersExport, $fileName); } }
5:设置路由进行访问:
// 数据库数据导入Excel文件 Route::get('export','index@export');