- フォームの作成: まず、画像をアップロードするためのフォームを作成します。以下は、HTMLのフォームの例です。
<form action="/upload" method="POST" enctype="multipart/form-data">
@csrf
<input type="file" name="images[]" multiple>
<button type="submit">アップロード</button>
</form>
- コントローラーの作成: 次に、画像を処理するためのコントローラーを作成します。以下は、画像を保存する例です。
public function upload(Request $request)
{
$images = $request->file('images');
foreach ($images as $image) {
$path = $image->store('public/images');
// 他の処理を行う場合はここで行います
}
return redirect()->back()->with('success', '画像がアップロードされました');
}
- ルートの設定: 最後に、ルートを設定して、フォームのアクションをコントローラーのメソッドに関連付けます。以下は、ルートの例です。
Route::post('/upload', 'ImageController@upload');
これで、Laravelで複数の画像をアップロードする準備が整いました。フォームを送信すると、選択した画像がサーバーに保存されます。
注意点:
- アップロードする画像のバリデーションやエラーハンドリングは、適切に実装する必要があります。
- 画像の保存パスやファイル名をカスタマイズする場合は、適宜変更してください。
以上が、Laravelで複数の画像をアップロードする方法の基本的な手順です。必要に応じて、追加の機能や処理を実装することもできます。