intervention imageライブラリを導入する
composerでインストール
$ composer require intervention/image
使い方
use Intervention\Image\ImageManager;
public function update(Request $request, $id)
{
$shopImage = $request->image;
if (!is_null($shopImage) && $shopImage->isValid()) {
// inputタグのtype=fileでアップロードした画像をリサイズして
$resizedImage = ImageManager::gd()->read($shopImage)->resize(1920, 1080)->encode();
// ユニークなファイル名
$fileName = uniqid(rand() . '_');
$extension = $shopImage->extension();
$uniqFileName = $fileName . '.' . $extension;
// ストレージへ保存する
Storage::put('public/shop/' . $uniqFileName, $resizedImage);
}
}
intervention imageはリサイズの以外にも画像の加工に関する操作は他にもできることが沢山あるので、興味があれば公式サイトを探ってみてください。
Intervention Image | Intervention Image v3 | intervention.io
Intervention Image provides an easy way to manipulate images with PHP using the GD or Imagick library.
intervention imageを使うにはGDライブラリを有効にする必要がある

phpinfo();を見て、GDが有効になっていることを確認する必要がある。
コメント