我在 Windows 操作系统和 laravel 10 上安装干预/镜像包时遇到问题。我按照以下步骤操作:
在 VS Code 的项目目录终端中输入以下命令:
composer require intervention/image
在 config/app.php 中添加了以下文件:
在
$providers
数组中,我添加了此包的服务提供商:
Intervention\Image\ImageServiceProvider::class
我还将这个包的外观添加到
$aliases
数组中,如下所示:
'aliases' => Facade::defaultAliases()->merge([
'Image' => Intervention\Image\Facades\Image::class,
])->toArray(),
最后,我通过输入以下命令发布了它:
php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravelRecent"
我还在我的
;extension=gd
中取消了extension=gd
到php.ini
的注释。
尽管执行了所有这些步骤,我仍然收到以下错误:
Intervention\Image\Exception\NotSupportedException: GD Library extension not available with this PHP installation.
这是我收到错误的代码:
namespace App\Http\Controllers;
use App\Models\HomeSlide;
use Illuminate\Http\Request;
use Image;
class HomeSliderController extends Controller {
public function UpdateSlider(Request $request) {
$slide_id = $request->id;
if ($request->file('home_slide')) {
$image = $request->file('home_slide');
$name_gen = hexdec(uniqid()) . '.' . $image->getClientOriginalExtension();
Image::make($image)->resize(636, 852)->save('upload/home_slide/' . $name_gen);
$save_url = 'upload/home_slide/' . $name_gen;
HomeSlide::findOrFail($slide_id)->update([
'title' => $request->title,
'short_title' => $request->short_title,
'video_url' => $request->video_url,
'home_slide' => $save_url,
]);
$notification = [
'message' => 'Home Slide Updated with Image Successfully',
'alert-type' => 'success'
];
return redirect()->back()->with($notification);
} else {
HomeSlide::findOrFail($slide_id)->update([
'title' => $request->title,
'short_title' => $request->short_title,
'video_url' => $request->video_url,
]);
$notification = [
'message' => 'Home Slide Updated without Image Successfully',
'alert-type' => 'success'
];
return redirect()->back()->with($notification);
}
}
}
有人可以告诉我如何解决这个问题吗?
请使用“干预/图像”:“^2.6.0” 与 Laravel 10 兼容。 https://github.com/Intervention/imagecache/pull/134