Deb*_*Roy 1 laravel intervention
我在 Laravel 5.6 中使用干预包,每当我上传文件时都会遇到这个问题,我遇到了错误编码格式(tmp)不受支持。我也启用了我的 gdd2 扩展。这是我使用过的代码。
public function store(Request $request)
{
$this->validate($request , [
'name' => 'required|unique:categories',
'description' => 'max:355',
'image' => 'required|image|mimes:jpeg,bmp,png,jpg'
]);
// Get Form Image
$image = $request->file('image');
$slug = str_slug($request->name);
if (isset($image))
{
$currentDate = Carbon::now()->toDateString();
$imageName = $slug.'-'.$currentDate.'-'.uniqid().'.'.$image->getClientOriginalExtension();
// Check if Category Dir exists
if (!Storage::disk('public')->exists('category'))
{
Storage::disk('public')->makeDirectory('category');
}
// Resize image for category and upload
$categoryImage = Image::make($image)->resize(1600,479)->save();
Storage::disk('public')->put('category/'.$imageName, $categoryImage);
// Check if Category Slider Dir exists
if (!Storage::disk('public')->exists('category/slider'))
{
Storage::disk('public')->makeDirectory('category/slider');
}
// Resize image for category slider and upload
$categorySlider = Image::make($image)->resize(500,333)->save();
Storage::disk('public')->put('category/slider/'.$imageName, $categorySlider);
}
else
{
$imageName = 'default.png';
}
$category = new Category();
$category->name = $request->name;
$category->slug = $slug;
$category->description = $request->description;
$category->image = $imageName;
$category->save();
Toastr::success('Category Saved Successfully','Success');
return redirect()->route('admin.category.index');
}
Run Code Online (Sandbox Code Playgroud)
Intervention\Image当您通过StorageFacade将文件保存到公共光盘时,您不需要在类上使用 save() 函数。
只需更换线路
$categoryImage = Image::make($image)->resize(1600,479)->save();
和
$categoryImage = Image::make($image)->resize(1600,479)->stream();
以避免必须将图像存储到 .tmp 扩展名下的临时文件夹。Laravel StorageFacade 将处理由创建的流Intervention\Image并将文件存储到公共磁盘。
| 归档时间: |
|
| 查看次数: |
11920 次 |
| 最近记录: |