如何将上传的图像保存到laravel中的存储?

Ede*_*dio 6 php laravel laravel-5

我正在使用图像干预将图像保存到存储文件夹.我有下面的代码,它似乎只是保存带有空白图像的文件名.我想我需要一种方法将文件内容写入文件夹但是却在为片段而苦苦挣扎.

if ($request->hasFile('photo')) {
            $image      = $request->file('photo');
            $fileName   = time() . '.' . $image->getClientOriginalExtension();

            $img = Image::make($image->getRealPath());
            $img->resize(120, 120, function ($constraint) {
                $constraint->aspectRatio();                 
            });

            //dd();
            Storage::disk('local')->put('images/1/smalls'.'/'.$fileName, $img, 'public');
Run Code Online (Sandbox Code Playgroud)

Avi*_*yan 12

你需要这样做

if ($request->hasFile('photo')) {
            $image      = $request->file('photo');
            $fileName   = time() . '.' . $image->getClientOriginalExtension();

            $img = Image::make($image->getRealPath());
            $img->resize(120, 120, function ($constraint) {
                $constraint->aspectRatio();                 
            });

            $img->stream(); // <-- Key point

            //dd();
            Storage::disk('local')->put('images/1/smalls'.'/'.$fileName, $img, 'public');
}
Run Code Online (Sandbox Code Playgroud)

  • 关于这实际上做了什么的解释肯定是有用的. (3认同)