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

 

posted @   王越666  阅读(134)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示