首頁 > 後端開發 > php教程 > 如何存取 Laravel 視圖中儲存的影像以獲得最佳效能?

如何存取 Laravel 視圖中儲存的影像以獲得最佳效能?

Linda Hamilton
發布: 2024-12-09 03:22:11
原創
710 人瀏覽過

How to Access Stored Images in Laravel Views for Optimal Performance?

存取Laravel 儲存中上傳的影像以進行視圖渲染

在Laravel 應用程式中,使用者頭像或其他媒體資源可能儲存在儲存目錄中。要在視圖中存取和顯示這些影像,您有多種選擇:

1。建立符號連結

從 Laravel 5.3 開始,artisan storage:link 指令建立從 public/storage 到 storage/app/public 的符號連結。這允許您使用前一個路徑存取後一個目錄中的檔案:

http://somedomain.com/storage/image.jpg
登入後複製
登入後複製

2.使用檔案服務的自訂路由

如果建立符號連結不可行,您可以建立自訂路由來讀取和提供映像:

Route::get('storage/{filename}', function ($filename) {
    $path = storage_path('public/' . $filename);

    if (!File::exists($path)) {
        abort(404);
    }

    $file = File::get($path);
    $type = File::mimeType($path);

    $response = Response::make($file, 200);
    $response->header("Content-Type", $type);

    return $response;
});
登入後複製

使用此路由,您可以使用以下路徑存取檔案:

http://somedomain.com/storage/image.jpg
登入後複製
登入後複製

3.使用乾預圖像庫(可選)

如果使用乾預圖像庫,您可以利用其response()方法:

Route::get('storage/{filename}', function ($filename) {
    return Image::make(storage_path('public/' . $filename))->response();
});
登入後複製

重要提示:

與讓 HTTP 伺服器直接處理檔案相比,手動提供檔案可能會導致效能損失。因此,請考慮將符號連結作為獲得最佳效能的首選方法。

以上是如何存取 Laravel 視圖中儲存的影像以獲得最佳效能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板