您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

如何在 Laravel 项目中处理 Excel 文件

2025/5/29 12:38:10发布16次查看
本文经授权转自 phphub 社区
说明 maatwebsite/excel 是一款强大的 excel 文件处理扩展包, 能够快速完成 excel 文件的的导出, 解析等功能.
本项目由 the est group 团队成员 @monkey 整理发布, 首发地为 phphub 社区.
文章的 demo 项目 截图
运行 demo 代码请见:
https://github.com/zhengjinghua/est-excel-demo
请参照此文档运行 demo:
https://phphub.org/topics/1902
文章概览 安装; 基础用法; 更多功能. 接下来是详细解说.
安装 1). 使用 composer 安装该扩展包:
composer require maatwebsite/excel
2). 安装完成后,修改 config/app.php 在 providers 数组内追加如下内容
'providers' => [ ... maatwebsite\excel\excelserviceprovider::class,],
3). 同时在 aliases 数组内追加如下内容:
'aliases' => [ ... 'excel' => maatwebsite\excel\facades\excel::class,]
4). 接下来运行以下命令生成此扩展包的配置文件 config/excel.php:
php artisan vendor:publish --provider=maatwebsite\excel\excelserviceprovider
默认配置基本能通用大部分的项目开发需求, 因此本文不对此配置文件做过多叙述, 想深入研究的童鞋可以阅读官方文档.
到此, 此拓展包即安装成功 :beers?beers:
基础用法 解析 excel 文件 # $excel_file_path = 你的 excel 文件存放地址$excel_data = excel::load($excel_file_path, function($reader) { $excel_data = excel::load($excel_file_path)->get()->toarray(); // 直接打印内容即可看到效果 echo 'job.xlsx 表格内容为:'; dd($excel_data);});
将数据导成 excel 文件 // 导出 excel 并能直接在浏览器下载# $export_file_name = 要生成的文件名excel::create($export_file_name, function ($excel) { $excel->sheet('sheetname', function ($sheet) { $sheet->appendrow(['data 1', 'data 2']); $sheet->appendrow(['data 3', 'data 4']); $sheet->appendrow(['data 5', 'data 6']); });})->download('xls');// 导出 excel 并存储到指定目录excel::create($export_file_name, function ($excel) { $excel->sheet('sheetname', function ($sheet) { $sheet->appendrow(['data 1', 'data 2']); $sheet->appendrow(['data 3', 'data 4']); $sheet->appendrow(['data 5', 'data 6']); });})->store('xls', $object_path);
导出的 excel 内容见下图:
更多功能 除了上述的解析/导出功能外, 此扩展包还支持:
解析指定表格里的指定列; 格式化日期; 添加计算公式; 缓存表格; 批量解析指定目录里的所有 excel 文件; 可以做格式转换, 如将 csv 转换成 xls, 反之亦可; 可以将 excel 结合 blade 模板引擎进行渲染. 这些更多的用例请移步 官方文档 参考.
欢迎关注 laraveltips, 一个专注于为 laravel 开发者服务, 致力于帮助开发者更好的掌握 laravel 框架, 提升开发效率的微信公众号.
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product