当前位置:网站首页>Laravel之文件上传
Laravel之文件上传
2022-07-17 00:09:00 【博BOBO】
Laravel中使用Illuminate\Http\Request实例的file方法来访问上传的文件,该方法返回的对象是Symfony\Component\HttpFoundation\File\UploadFile类的一个实例,该类继承自PHP标准库中提供与文件交互方法的SplFileInfo类。
$file = $request->file('file1'); //获取UploadFile的实例
关于UploadFile的方法可以参考:
http://api.symfony.com/2.7/Symfony/Component/HttpFoundation/File/UploadedFile.html
以下介绍几个基本的方法:
isValid()
用于判断文件是否上传成功
getClientOriginalName()
getClientOriginalExtension()
获取文件扩展名
move(string directory,string
name = null)
将文件移动到指定目录
getClientSize()
获取文件大小
实例:
//form表单
<form method="post" action="" enctype="multipart/form-data" class="form-horizontal">
{
{ csrf_field() }}
<div class="form-group">
<label class="col-md-2 control-label">用户名</label>
<div class="col-md-6">
<input class="form-control" type="text" placeholder="请输入用户名"
value="{
{ old('name') ? old('name') : '' }}" id="name" name="name">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">文件名</label>
<div class="col-md-6">
<input class="form-control" type="file" id="file1" name="file1">
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-2">
<button type="submit" id="submit" class="btn btn-primary">提交</button>
</div>
</div>
</form>
//后台代码
if ($request->hasFile('file1')) {
$file = $request->file('file1'); //获取UploadFile实例
if ( $file->isValid()) { //判断文件是否有效
//$filename = $file->getClientOriginalName(); //文件原名称
$extension = $file->getClientOriginalExtension(); //扩展名
$filename = time() . "." . $extension; //重命名
$file->move('D:\phpStudy\WWW\laravel\public\upload', $filename); //移动至指定目录
}
}
边栏推荐
猜你喜欢
随机推荐
15 设计电影租借系统
一文盘点估值超过1亿美元的NFT项目
07 BTC mining
The interviewer asked: how to check if redis suddenly slows down?
CheckPoint and DataNode
未成年人数字安全保护的问题与对策
开源项目丨 Taier 1.1 版本正式发布,新增功能一览为快
爭奪存量用戶關鍵戰,助力企業構建完美標簽體系丨01期直播回顧
NameNode 和 SecondaryNameNode
同学们 小组作业记得别抄哈 幸好只传了两道题 不要出事了
ipfs 文件持久化操作
Express project creation and its routing introduction
Router and keep alive
NFT-数字藏品之库里为何花116万买一个NFT头像?回顾NFT头像的“发迹史”或许能找到答案
情况说明和感想
What is the QS module?
yum源的安装
9 无人机方阵
毒瘤 DDD
争夺存量用户关键战,助力企业构建完美标签体系丨01期直播回顾









