新闻中心

Lar*el怎么导出Excel文件_Lar*el Excel插件使用教程

2025-12-04
浏览次数:
返回列表
最常用工具是Maatwebsite/Lar*el-Excel;基于PhpSpreadsheet,支持导入导出Excel/CSV;安装命令为composer require maatwebsite/excel;Lar*el 8+自动注册服务提供者和门面;旧版本需手动在config/app.php中添加ServiceProvider和Facade;通过php artisan make:export UsersExport --model=User生成导出类;导出类位于app/Exports目录。

laravel怎么导出excel文件_laravel excel插件使用教程

在 Lar*el 项目中导出 Excel 文件,最常用且功能强大的工具是 Maatwebsite/Lar*el-Excel 插件。它是基于 PHPOffice 的 PhpSpreadsheet 开发的,支持导入、导出 Excel 和 CSV 文件,使用简单,扩展性强。

安装 Lar*el Excel 插件

在 Lar*el 项目根目录下运行以下命令安装:

composer require maatwebsite/excel

如果你使用的是 Lar*el 8+ 且版本为 Lar*el Excel 3.1+,无需手动注册服务提供者和门面,因为 Composer 安装后会自动发现(Auto-discovery)。

如果是旧版本,需手动添加:

  • config/app.php 中添加服务提供者:
'providers' => [
    Maatwebsite\Excel\ExcelServiceProvider::class,
]
  • 添加门面:
'aliases' => [
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]

创建导出类

使用 Artisan 命令生成一个导出类:

php artisan make:export UsersExport --model=User

该命令会在 app/Exports 目录下生成 UsersExport.php 文件。如果没有此目录,请先创建。

编辑导出类,实现数据导出逻辑:

<?php

namespace App\Exports;

use App\Models\User; // 注意模型命名空间
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;

class UsersExport implements FromCollection, WithHeadings
{
    public function collection()
    {
        return User::select('id', 'name', 'email', 'created_at')->get();
    }

    public function headings(): array
    {
        return [
            'ID',
            '姓名',
            '邮箱',
            '注册时间'
        ];
    }
}

说明:

神笔马良 神笔马良

神笔马良 - AI让剧本一键成片。

神笔马良 320 查看详情 神笔马良
  • FromCollection:表示从 Eloquent 集合导出数据。
  • WithHeadings:添加表头。

在控制器中调用导出

创建一个控制器方法来触发导出:

<?php

namespace App\Http\Controllers;

use App\Exports\UsersExport;
use Maatwebsite\Excel\Facades\Excel;
use Illuminate\Http\Request;

class UserController extends Controller
{
    public function export()
    {
        return Excel::download(new UsersExport, 'users.xlsx');
    }
}

然后在路由中注册:

Route::get('/export-users', [UserController::class, 'export']);

访问 /export-users 即可下载 users.xlsx 文件。

支持格式与自定义文件名

默认导出为 .xlsx 格式,也支持其他格式:

  • Excel::download($export, 'file.csv') → CSV
  • Excel::download($export, 'file.xls') → XLS
  • Excel::download($export, 'file.xslx', \Maatwebsite\Excel\Excel::XLSX) → 显式指定格式

高级功能(可选)

你还可以实现更多接口来自定义导出行为:

  • ShouldAutoSize:自动调整列宽。
  • WithMapping:对每行数据进行映射处理。
  • WithEvents:监听导出事件,如设置标题样式等。

例如添加自动列宽:

class UsersExport implements FromCollection, WithHeadings, ShouldAutoSize
{
    // ...
}

基本上就这些。Lar*el Excel 插件让导出 Excel 变得非常简单,配合 Eloquent 模型能快速实现数据导出功能。按照上述步骤操作,你就能在项目中轻松实现导出功能了。

以上就是Lar*el怎么导出Excel文件_Lar*el Excel插件使用教程的详细内容,更多请关注php中文网其它相关文章!


# 如果你  # 汉中如何做seo优化  # seo大搜怎么样  # 郑州网站建设规划  # 大岭山家具网站推广报价  # 广告网站建设方案策划书  # 外贸网站建设收益  # 大庆网站推广工作室招聘  # 天桥网站建设推广  # 抖音推广seo培训  # 网站推广回收  # 你还  # 会在  # 你就  # 注册时间  # php  # 旧版本  # 的是  # 最常用  # 绑定  # 报错  # csv  # office  # 工具  # app  # cad  # composer  # laravel  # excel 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: 包子漫画官方网站在线链接-包子漫画在线阅读平台主页地址  J*a递归快速排序中静态变量导致数据累积问题的解决方案  AO3官网镜像链接 Archive of Our Own同人文在线浏览  CSS布局中意外空白:解决padding-top导致的顶部间距问题  c++如何使用Catch2编写单元测试_c++简洁易用的BDD风格测试框架  淘宝网网页版登录入口 淘宝官方网页版快捷登录  Go RPC HTTP服务正确实现与常见陷阱解析  在Go语言中利用后缀数组处理多字符串:实现高效文本匹配与自动补全  高德地图怎么看全景照片_高德地图全景照片浏览教程  Win11 USB传输速度慢怎么解决 Win11 USB驱动更新与设置  百度浏览器字体显示异常偏小_百度浏览器字体渲染修复方案  CSS Flexbox如何实现多行排列_flex-wrap wrap自动换行显示  怎么在mac上运行html代码_mac运行html代码方法【指南】  Composer的 "licenses" 命令如何帮助你遵守开源协议_检查项目依赖的许可证合规性  word中如何让数字纵向排列_Word数字纵向排列方法  修复二维数组索引越界异常:一维循环到二维坐标的正确映射  J*a里如何实现线程安全的懒加载单例_懒加载单例实现方法解析  响应式CSS Grid布局:优化网格项在小屏幕下的堆叠与宽度适配  台积电1.4nm工艺A14瞄准2028:10年来性能提升80%  sublime怎么预览Markdown渲染效果_Markdown Preview插件 for sublime教程  绝地鸭卫平a核爆刀流玩法攻略  Python实时数据流中的动态最值查找策略  Pygame教程:解决用户输入与游戏状态更新不同步问题  我的世界官方游戏入口 我的世界官网平台直达链接  2025俄罗斯Yandex最新入口 官方网站地址及浏览器下载指南  qq浏览器如何查看和导出已保存的密码 qq浏览器密码管理器数据备份教程  J*aScript:在map操作中高效处理空数组  Word2013如何插入视频和音频媒体_Word2013媒体插入的多媒体支持  顺丰快件物流信息 官方网站查询入口  QQ邮箱正确登录入口_QQ邮箱官方网站使用地址  深入理解rpy2中的类型转换:优化Python对象到R矩阵的映射  如何在Promise链中优雅地中断后续then执行  Odoo 16:在表单视图中基于当前记录动态修改Tree视图属性  Sublime Text怎么显示空格和制表符_Sublime显示不可见字符设置  必由学官网入口 必由学教师登录入口  Pandas DataFrame 多条件优先级排序与排名  蛙漫正版漫画平台入口_蛙漫免费阅读全站漫画资源  蛙漫限时开放最深处链接_蛙漫全站漫画会员同款秒开地址  微博网页版官方账号登录 微博网页版内容浏览使用指南  正确连接J*aScript到HTML实现可点击图片与自定义事件处理  UC浏览器官网入口2025最新 UC浏览器网页版正式地址  J*aScript井字棋(Tic-Tac-Toe)核心交互逻辑实现教程  PyTorch模型训练准确率不提升:诊断与修复常见指标计算错误  Lar*el Form Request中唯一性验证在更新操作中的正确实现  QQ邮箱登录官网首页 腾讯QQ邮箱网页入口  微博网页版主页入口 微博官方网站免登录访问  qq游戏网页版直接玩_qq游戏免下载快速入口  《GTA6》开发画面疑似泄露!这次可不是AI了  Win11怎么查看电脑配置_Win11硬件配置检测工具使用  谷歌学术网站直达地址 谷歌学术搜索网页版一键进入 

搜索