codecamp

Laravel 8 自动流式传输

您可以使用 putFileputFileAs 方法来让 Laravel 自动将给定的文件流式传输到您的存储位置。该方法接收一个 Illuminate\Http\FileIlluminate\Http\UploadedFile 实例并自动将文件流式传输到您想要的位置:

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 并将其作为文件名。文件的扩展名则是根据文件的 MIME 类型来进行判断。putFile 方法会返回文件的路径,您可以将其和生成的文件名存储到数据库中。

putFileputFileAs 方法接收一个参数用来指定存储文件的「可见性」。当您将文件存储到诸如 S3 的云盘上,并且想让其能够公开访问,此时,此举(指定存储文件的可见性)就很有帮助:

Storage::putFile('photos', new File('/path/to/photo'), 'public'); 
Laravel 8 保存文件
Laravel 8 文件数据写入
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

Laravel 8 入门指南

Laravel 8 基础功能

Laravel 8 前端开发

Laravel 8 安全相关

Laravel 8 综合话题

数据库

Eloquent ORM

测试相关

官方拓展包

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }