加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Laravel5多图上传和Laravel5单图上传的功能实现

发布时间:2020-12-14 19:58:32 所属栏目:大数据 来源:网络整理
导读:?Laravel5文件上传默认只能上传一张图片,但是有的时候我们需要一次性上传多图就不行了,我在网上看了很多关于laravel5图片上传的文章,很多都只是介绍laravel5单图上传,多图片上传介绍少之有少,今天分享一篇关于laravrl5多图上传文章,代码逻辑设计可能不

?Laravel5文件上传默认只能上传一张图片,但是有的时候我们需要一次性上传多图就不行了,我在网上看了很多关于laravel5图片上传的文章,很多都只是介绍laravel5单图上传,多图片上传介绍少之有少,今天分享一篇关于laravrl5多图上传文章,代码逻辑设计可能不完美,但功能实现了。希望对大家有所帮助!

前端代码:

注意

<div class="form-group last">
<label class="control-label col-md-2">选择图片 <i style="color: red;">*
<div class="col-md-9">
<div class="fileupload fileupload-new" data-provides="fileupload">
<div class="fileupload-new thumbnail" style="width: 210px; height: 150px;">

上传图片 Change ?? 删除

<div class="form-group last">
<label class="control-label col-md-2">选择图片 <i style="color: red;">*
<div class="col-md-9">
<div class="fileupload fileupload-new" data-provides="fileupload">
<div class="fileupload-new thumbnail" style="width: 210px; height: 150px;">

上传图片 Change ?? 删除

  

Laravel5单图上传:

upload(Request (!->hasFile('img'("请选择上传图片, 返回上一页!" = ->('img' (!->("上传图片出错,请重试,返回上一页!" getRealPath(); // 获取临时图片绝对路径 = -> getClientOriginalExtension(); = ('YmdHis').(100,999).'.'.; = ('Y-m-d' = ->move(public_path().'/uploads/'..'/',); = 'uploads/'..'/'.

Laravel5多图上传:

其实多图片上传就是多了一个foreach循环

upload(Request <span style="color: #800080">$file = <span style="color: #800080">$request-><span style="color: #008080">file('img'<span style="color: #000000">);
<span style="color: #800080">$filePath =[]; <span style="color: #008000">//<span style="color: #008000"> 定义空数组用来存放图片路径
<span style="color: #0000ff">foreach (<span style="color: #800080">$file <span style="color: #0000ff">as <span style="color: #800080">$key => <span style="color: #800080">$value<span style="color: #000000">) {
<span style="color: #008000">//<span style="color: #008000"> 判断图片上传中是否出错
<span style="color: #0000ff">if (!<span style="color: #800080">$value-><span style="color: #000000">isValid()) {
<span style="color: #0000ff">exit("上传图片出错,请重试!"<span style="color: #000000">);
}
<span style="color: #0000ff">if(!<span style="color: #0000ff">empty(<span style="color: #800080">$value)){<span style="color: #008000">//<span style="color: #008000">此处防止没有多文件上传的情况
<span style="color: #800080">$allowed_extensions = ["png","jpg","gif"<span style="color: #000000">];
<span style="color: #0000ff">if (<span style="color: #800080">$value->getClientOriginalExtension() && !<span style="color: #008080">in_array(<span style="color: #800080">$value->getClientOriginalExtension(),<span style="color: #800080">$allowed_extensions<span style="color: #000000">)) {
<span style="color: #0000ff">exit('您只能上传PNG、JPG或GIF格式的图片!'<span style="color: #000000">);
}
<span style="color: #800080">$destinationPath = '/uploads/'.<span style="color: #008080">date('Y-m-d'); <span style="color: #008000">//<span style="color: #008000"> public文件夹下面uploads/xxxx-xx-xx 建文件夹
<span style="color: #800080">$extension = <span style="color: #800080">$value->getClientOriginalExtension(); <span style="color: #008000">//<span style="color: #008000"> 上传文件后缀
<span style="color: #800080">$fileName = <span style="color: #008080">date('YmdHis').<span style="color: #008080">mt_rand(100,999).'.'.<span style="color: #800080">$extension; <span style="color: #008000">//<span style="color: #008000"> 重命名
<span style="color: #800080">$value->move(public_path().<span style="color: #800080">$destinationPath,<span style="color: #800080">$fileName); <span style="color: #008000">//<span style="color: #008000"> 保存图片
<span style="color: #800080">$filePath[] = <span style="color: #800080">$destinationPath.'/'.<span style="color: #800080">$fileName<span style="color: #000000">;

}

}
<span style="color: #008000">//<span style="color: #008000"> 返回上传图片路径,用于保存到数据库中
<span style="color: #0000ff">return <span style="color: #800080">$filePath<span style="color: #000000">;

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读