Laravelでのパブリックストレージの使用方法


  1. ファイルのアップロード: ユーザーがファイルをアップロードしたい場合、まずフォームを作成します。以下は、フォームの例です。
<form action="/upload" method="POST" enctype="multipart/form-data">
    @csrf
    <input type="file" name="file">
    <button type="submit">アップロード</button>
</form>

次に、アップロードされたファイルを保存するためのルートとコントローラーを作成します。

// web.php
Route::post('/upload', 'UploadController@upload');
// UploadController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;
class UploadController extends Controller
{
    public function upload(Request $request)
    {
        if ($request->hasFile('file')) {
            $path = $request->file('file')->store('public');
            // 保存されたファイルのパスを取得
            $url = Storage::url($path);
            return "ファイルがアップロードされました: <a href=\"$url\">$url</a>";
        }
        return 'ファイルが選択されていません。';
    }
}
  1. ファイルの表示: パブリックストレージに保存されたファイルは、URLを通じてアクセスすることができます。例えば、保存された画像を表示する場合は、次のようにします。
<img src="{{ asset('storage/ファイル名') }}" alt="ファイル名">
  1. ファイルの削除: 不要なファイルを削除する場合は、Storageファサードを使用します。
use Illuminate\Support\Facades\Storage;
Storage::delete('public/ファイル名');

これらの例を参考にして、Laravelでのパブリックストレージの使用方法を理解し、自身のアプリケーションに適用してみてください。