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

前端之家收集整理的这篇文章主要介绍了Laravel5多图上传和Laravel5单图上传的功能实现前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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

前端代码

注意

Highlighter">


<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">;

}

原文链接:https://www.f2er.com/laravel/69651.html

猜你在找的Laravel相关文章