laravel excel 上传文件保存到本地服务器功能

(编辑:jimmy 日期: 2025/9/18 浏览:2)

首先需要下载安装好.环境可以使用

本地上传

$file = $request->file('file', 0);//文件名称
    /**
判断文件格式以及各种错误
**/
    //获取文件的扩展名
    $ext = $file->getClientOriginalExtension();
    //获取文件的绝对路径
    $path = $file->getRealPath();
    $file_name = date("YmdHis") . '.' .$ext;
    //存储文件。disk里面的public。总的来说,就是调用disk模块里的public配置
    // 路径 : 默认的使用的storage 保存到/storage/app/public路径下边,可自行设置
    //上传成功返回true, 失败返回false 
   $result = Storage::disk('public')->put($file_name, file_get_contents($path));

本地上传还可以使用这种方法:(首先需要定义模型来控制数据)

$res = Excel::store(new UserExport($$data), $file_path)

读取上传上去的文件

自定义一个数据模型, 可以使用ToModel , ToCollection等等, 详情请见官网

https://laravel-excel.maatwebsite.nl/3.1/getting-started/installation.html

然后在控制器里面直接调用读取就好,

//路径要定位到文件上传到服务器的路径下边
$filePath = '../storage/app/public/' . iconv('UTF-8', 'gb2312', $file_name);
//直接读取,这就是我们需要的数组的形式
$array = Excel::toArray(new UserImport(),$filePath);

以上这篇laravel excel 上传文件保存到本地服务器功能就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。