博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Laravel】使用 Laravel Excel 实现 Excel/CSV 文件导入导出功能
阅读量:6591 次
发布时间:2019-06-24

本文共 1408 字,大约阅读时间需要 4 分钟。

一、安装配置

使用Composer安装依赖:

composer require maatwebsite/excel

发布配置(可选):

php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"

配置config/app.phpprovidersaliases(可选):

'providers' => [    /*     * Package Service Providers...     */    Maatwebsite\Excel\ExcelServiceProvider::class,]
'aliases' => [    //...    'Excel' => Maatwebsite\Excel\Facades\Excel::class,]

二、使用方式

创建导出和导入类:

php artisan make:export UsersExport --model=App\\Userphp artisan make:import UsersImport --model=App\\User

(一)数据导出

编写导出类实现相应接口:

控制器代码:

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

(二)数据导入

编写导入类实现相应接口:

控制器代码:

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://www.cnblogs.com/jxl1996/p/10312197.html

你可能感兴趣的文章
Flex性能优化常用手法总结
查看>>
线程池管理的工具类,封装类
查看>>
8.最佳的MongoDB客户端管理工具
查看>>
多类选择器书写格式
查看>>
focus方法
查看>>
掌握Thinkphp3.2.0----模型初步
查看>>
SSH中后台传到前台一个信息集合,tr td中怎么进行排列,类似在一个div里排列书籍...
查看>>
day10,11-Python 基本数据类型介绍之数字与字符串(看看就好)
查看>>
JAVA API----Math类和Random类
查看>>
luoguP4841 城市规划
查看>>
Python3 - 时间处理与定时任务
查看>>
mybatis 基础_mybatis介绍
查看>>
Android错误之New package not yet registered with the system
查看>>
自我介绍
查看>>
python实战,
查看>>
visual studio 多行编辑 列编辑
查看>>
shuoj 418 丢史蒂芬妮(素数筛+sg函数)
查看>>
Codeforces Round #469 (Div. 2)
查看>>
常用网络设备
查看>>
转:深入理解Java G1垃圾收集器
查看>>