0

我使用 laravel 5.6

我上传图片的方法是这样的:

public function uploadImage($file) {
    if($file) {
        $fileName = str_random(40) . '.' . $file->guessClientExtension();
    }
    $destinationPath = storage_path() . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'product';
    if(!File::exists($destinationPath)) {
        File::makeDirectory($destinationPath, 0755, true);
    }
    $file->move($destinationPath, $fileName);
    return $fileName;
}

该代码有效。如果该方法运行,它将在产品文件夹中保存一个文件

但我想添加一个逻辑。如果图像成功保存在产品文件夹中,那么它将在文件夹产品中创建一个文件夹缩略图

我尝试$file->move($destinationPath, $fileName);像这样在下面添加此代码:

$destinationPathThumb = storage_path() . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'product' . DIRECTORY_SEPARATOR . 'thumb';
if(!File::exists($destinationPathThumb)) {
    File::makeDirectory($destinationPathThumb, 0755, true);
}
$file->move($destinationPathThumb, $fileName)

然后我朗姆酒我的方法,存在这样的错误:

解析错误:语法错误,意外的“返回”(T_RETURN)

看来代码行仍然是错误的

我怎么解决这个问题?

4

2 回答 2

2

你错过了这条线旁边的分号

$file->move($destinationPathThumb, $fileName)

把这个

$file->move($destinationPathThumb, $fileName);
于 2018-02-23T04:15:04.370 回答
0

你少了一个分号。

$destinationPathThumb = storage_path() . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'product' . DIRECTORY_SEPARATOR . 'thumb';
if(!File::exists($destinationPathThumb)) {
  File::makeDirectory($destinationPathThumb, 0755, true);
}
$file->move($destinationPathThumb, $fileName);

您的 IDE 可以向您展示这一点。

于 2018-02-23T04:14:44.700 回答