likeshop采集商品图片无法保存解决方案

封面图
在这里插入图片描述

一个修复单,客户的likeshop采集tb商品后,保存到商品库的时候 主图无法显示
报错:

"/www/wwwroot/test.0ev.cn/server/public/uploads/l7pu2aqt/admin/images/d61d40dab9e6245f90b62ede72b51639.jpg"
string(6226) "think\exception\ErrorException:
fopen(/www/wwwroot/test.0ev.cn/server/public/uploads/l7pu2aqt/admin/images/d61d40dab9e6245f90b62ede72b51639.jpg): Failed

最终定位到问题是 app/common.php的saveImageToLocal方法

原本方法如下:

function saveImageToLocal($file_name, $absolute_path, string $save_url = 'uploads/images/')
{
   
    try {
   
        $data = file_get_contents($absolute_path);
        
        $fileName = $save_url . $file_name;
        $fileLocalFullName = public_path() . $fileName;
        $f = fopen($save_url . $file_name, "w");
        fwrite($f, $data);
        fclose($f);
    
        app('\app\Request')->setTempUploadLocalWithFiles([
            'file'  => [
                'name'      => $fileName,
                'type'      => '',
                'size'      => filesize($fileLocalFullName),
                'tmp_name'  => $fileLocalFullName,
                'error'     => 0,
                'full_path' => $fileLocalFullName,
            ],
        ]);
        //写入数据库中
        $file = UploadService::image(0);
    } catch (
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值