官方手册:🚀 5 minute quick start | Laravel Excel
借鉴:Laravel Excel 3.1 使用方法 Excel 导入操作_Do_Only的博客-CSDN博客_excel::toarray
第一步:安装
composer require maatwebsite/excel
第二步:创建自定义导入文件
该命令app/Exports目录下生成对应的文件
php artisan make:import DaoruImport
第三步:修改自定义导入文件
生成后的文件内容(这是我根据自己的需求改成的数组)
<?php
namespace App\Imports;
use App\Models\Article;
use Illuminate\Support\Collection;
use Maatwebsite\Excel\Concerns\ToArray;
use Maatwebsite\Excel\Concerns\ToCollection;
use Maatwebsite\Excel\Concerns\ToModel;
class DaoruImport implements ToArray
{
/**
* @param array $row
*
* @return Article|null
*/
public function Array(Array $tables)
{
// dump('333');die;
return $tables;
}
}
第四步:定义路由与方法
路由
Route::get('import','TestController@import');
控制器
/**
* 导入Excel
* @return void
*/
public function daoru(Request $request)
{
$data = Excel::toArray(new DaoruImport, request()->file('file'));
// dd($data);
// 加工数据$data;
if(!empty($data)) {
$arr = $data[0];
unset($arr[0]);
foreach($arr as $rows) {
$insert = [
'username' => $rows[0],
'mobile' => $rows[1],
];
DB::table('users')->insert($insert);
}
return Response::json(['code'=>1,'msg'=>'导入成功']);
}
}
细节:如果你写完你的程序后,请一定多测试几个列如:user.xls文件,本人的心酸历程就不分享了,总之,就是多测试测试导入的Excel文件是否能用
我是星星,学习不打烊。
本文档介绍了如何使用LaravelExcel3.1进行Excel数据导入。首先通过Composer安装扩展,然后创建自定义导入类,接着修改导入类实现toArray方法。在控制器中定义路由和方法,读取上传文件并保存到数据库。最后提醒读者多做测试以确保导入功能的稳定性。
603

被折叠的 条评论
为什么被折叠?



