Laravel 8 自動流式傳輸

2021-07-19 10:14 更新

您可以使用 putFileputFileAs 方法來讓 Laravel 自動將給定的文件流式傳輸?shù)侥拇鎯ξ恢谩T摲椒ń邮找粋€ Illuminate\Http\FileIlluminate\Http\UploadedFile 實例并自動將文件流式傳輸?shù)侥胍奈恢茫?/p>

use Illuminate\Http\File;
use Illuminate\Support\Facades\Storage;

// 自動為文件名生成唯一 ID...
Storage::putFile('photos', new File('/path/to/photo'));

// 手動指定文件名...
Storage::putFileAs('photos', new File('/path/to/photo'), 'photo.jpg'); 

關于 putFile 方法,有一些重點需要注意。請注意我們僅僅指定了目錄名。默認情況下, putFile 方法將生成唯一的 ID 并將其作為文件名。文件的擴展名則是根據(jù)文件的 MIME 類型來進行判斷。putFile 方法會返回文件的路徑,您可以將其和生成的文件名存儲到數(shù)據(jù)庫中。

putFileputFileAs 方法接收一個參數(shù)用來指定存儲文件的「可見性」。當您將文件存儲到諸如 S3 的云盤上,并且想讓其能夠公開訪問,此時,此舉(指定存儲文件的可見性)就很有幫助:

Storage::putFile('photos', new File('/path/to/photo'), 'public'); 
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號