上传文件报错 只有 Excel 多工作表时才报错 其他没问题

上传.xls文件时,单个工作表没问题,如果含有多个工作表报错

上传代码为简单的 $path = $request->file('files')->store('files');

请教如何解决
以下是报错提示

(1/1) ErrorException
fopen(D:\xampp\htdocs\newhr\public\uploads\files/Kcswsx62v6x11wHfasg8EIqIhFFusn3YqBHhkh9G.): failed to open stream: Permission denied

in Local.php (line 151)
at HandleExceptions->handleError(2, 'fopen(D:\xampp\htdocs\newhr\public\uploads\files/Kcswsx62v6x11wHfasg8EIqIhFFusn3YqBHhkh9G.): failed to open stream: Permission denied', 'D:\xampp\htdocs\newhr\vendor\league\flysystem\src\Adapter\Local.php', 151, array('path' => 'files/Kcswsx62v6x11wHfasg8EIqIhFFusn3YqBHhkh9G.', 'resource' => resource, 'config' => object(Config), 'location' => 'D:\xampp\htdocs\newhr\public\uploads\files/Kcswsx62v6x11wHfasg8EIqIhFFusn3YqBHhkh9G.'))
at fopen('D:\xampp\htdocs\newhr\public\uploads\files/Kcswsx62v6x11wHfasg8EIqIhFFusn3YqBHhkh9G.', 'w+b')

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 8

会不会是文件问题?尝试新建另外一个试试。

7年前 评论

@IceBay 我试了其他含有多个工作表的xls文件 上传也是报错 但是我把报错的文件另存为xlsx 又不报错了 太奇怪了

7年前 评论

@风花树 我环境采用的Homestead,上传部分使用的是你上述所说的代码,并没有出现这个情况。
单工作表确定没问题吗?提示在指的是权限问题,是不是文件的类型有问题,导致文件打不开。
我第一次是将xlsx手动改为xls后缀,上传后自动转为了xlsx。

7年前 评论

@IceBay 你确定你的xls是有多个工作表的吗 ?如果文件类型有问题 可是xls里如果只有单个工作表又是能正常上传的

7年前 评论

@IceBay 我明天观察下上传后是否会自动改后缀 然后看下多工作表和单工作表是否有区别

7年前 评论

@风花树 是的,一个是单工作表,另一个是3个工作表,并且都有内容。

7年前 评论

@IceBay 可能是环境的问题吧 我试了一些xls,一部分多工作表的能上传一部分又不能,又感觉不出这些文件的区别。现在我修改了上传代码,改为手动修改文件名,不再使用laravel的自动修改文件名,暂时没问题了

7年前 评论

会不会是上传的时候,文件被占用。建议这样测试:复制一份新文件,上传新文件。

7年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!