laravel7 数据库数据导出至 xlsx
阅读原文时间:2023年07月11日阅读:1

网址参考:

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');