【Laravel】使用 Laravel Excel 实现 Excel/CSV 文件导入导出功能
2024-10-19 21:36:57
一、安装配置
使用Composer安装依赖:
composer require maatwebsite/excel
发布配置(可选):
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"
配置config/app.php的providers和aliases(可选):
'providers' => [
/*
* Package Service Providers...
*/
Maatwebsite\Excel\ExcelServiceProvider::class,
]
'aliases' => [
//...
'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]
二、使用方式
创建导出和导入类:
php artisan make:export UsersExport --model=App\\User
php artisan make:import UsersImport --model=App\\User
(一)数据导出
编写导出类实现相应接口:https://laravel-excel.maatwebsite.nl/3.1/exports/concerns.html
控制器代码:
public function export()
{
return Excel::download(new UsersExport, 'users.xlsx');
}
(二)数据导入
编写导入类实现相应接口:https://laravel-excel.maatwebsite.nl/3.1/imports/concerns.html
控制器代码:
public function import()
{
return Excel::import(new UsersImport, 'users.xlsx');
}
数据导入注意事项:
Excel::import($import, $filePath, $disk = null, $readerType = null)方法注意事项:
①方式一:可以不用将excel文件上传到磁盘,方法第二个参数设置为上传文件对象的实例,例如:
Excel::import(new UsersImport, $request->file('excel'));
②方式二:将excel文件上传到磁盘,第二个参数设置为相对于磁盘的相对路径,第三个参数需设置为磁盘名。如果不设置磁盘名会采用默认磁盘。例如:
文件地址为:. . ./storage/app/public/excel/user.xlsx (软链接地址为:/public/storage/excel/user.xlsx)==>>$filePath应该设置为:excel\user.xlsx
Excel::import(new UsersImport, $fileName,'public');
数据导入注意事项:
①默认情况下,直接导入数据库会将表格所有数据导入(包括第一行表头),如果不需要第一行数据,应该手动处理,或者导入类实现Maatwebsite\Excel\Concerns\WithHeadingRow接口来把第一行作为标题行。
②使用模型进行添加数据不要忘了给模型设置$fillable或$guarded属性。
三、参考文档:
依赖库地址:https://packagist.org/packages/maatwebsite/excel
官方文档:https://laravel-excel.maatwebsite.nl/
最新文章
- 【转载】8天学通MongoDB——第八天 驱动实践
- django自动化部署脚本
- jQuery学习之jQuery Ajax用法详解
- Nginx+CI出现404错误
- 趣味问题:画图(c++实现)
- log4j加载方式导致的bae和sae部署异常
- Linux 高级网络编程
- URAL1118. Nontrivial Numbers
- html5写的一个时钟
- 打开U盘里是U盘的快捷方式?(2013.12.05)
- jquery中的on事件
- Struts2 之值栈
- Python开发【内置函数篇】re正则表达式
- 在Winform开发框架中下拉列表绑定字典以及使用缓存提高界面显示速度
- java消息服务学习之JMS概念
- Axis2部署后服务器端出现异常信息
- 【PAT】B1080 MOOC期终成绩(25 分)
- Kafka使用log.retention.hours改变消息端的消息保存时间
- TCxGrid 把列移上移下。
- RAD Studio 2010~XE8 官方 ISO 下载地址 (2015-03-28更新)