Thinkphp3.2简单解决多文件上传只上传一张的问题


Posted in PHP onSeptember 26, 2017

html简单页面:

Thinkphp3.2简单解决多文件上传只上传一张的问题

index.html代码:

<form action="{:U('index/upload')}" method="post" enctype="multipart/form-data">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 文件上传:<input type="file" name = "test[]">
 <input type="submit" value = "提交">
</form>

控制器IndexController.class.php代码:

<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
 public function index(){
  $this->display();
 }
 public function upload(){
  if(IS_POST){
   $config = array(
    'maxSize' => 3145728,
    'rootPath' => './Uploads/',
    'savePath' => '',
    'saveName' => array('uniqid', mt_rand(1,999999).'_'.md5(uniqid())),
    'exts'  => array('jpg', 'gif', 'png', 'jpeg'),
    'autoSub' => true,
    'subName' => array('date','Ymd'),
   );
   $upload = new \Think\Upload($config);// 实例化上传类
   $info = $upload->upload();
   if(!$info) {
    $this->error($upload->getError());
   }else{
    foreach($info as $file){
     echo $file['savepath'].$file['savename'];
    }
   }
  }else{
   $this->display();
  }
 }
}

上传结果显示:

Thinkphp3.2简单解决多文件上传只上传一张的问题Thinkphp3.2简单解决多文件上传只上传一张的问题

好多人在进行多文件上传的时候,最后发现只是上传了一张,主要就是命名所致,因为是同样的名字,所以最后就剩一张图片
解决方法:第一种:

$config = array(
    'maxSize' => 3145728,
    'rootPath' => './Uploads/',
    'exts'  => array('jpg', 'gif', 'png', 'jpeg'),
    'autoSub' => true,
    'subName' => array('date','Ymd'),
    'saveRule' => '',
   );

置空$config里面的saveRule,上传后的名称为:59c8d38cdb968.jpg

Thinkphp3.2简单解决多文件上传只上传一张的问题

若是感觉这种命名不可靠,可采取第二种方法:

$config = array(
    'maxSize' => 3145728,
    'rootPath' => './Uploads/',
    'saveName' => array('uniqid', mt_rand(1,999999).'_'.md5(uniqid())),
    'exts'  => array('jpg', 'gif', 'png', 'jpeg'),
    'autoSub' => true,
    'subName' => array('date','Ymd'),
   );

设置$config中: 'saveName' => array('uniqid', mt_rand(1,999999).'_'.md5(uniqid())),

其最后的结果类似于:672563_30ad4d8a2aafc832363de8edc1940b5c59c8d44a303f9.jpg

Thinkphp3.2简单解决多文件上传只上传一张的问题

然,命名可根据需要自行修改,多文件上传方法很多,这里只是提供个简单便捷的方法!

以上这篇Thinkphp3.2简单解决多文件上传只上传一张的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP中,文件上传
Dec 06 PHP
PHP 地址栏信息的获取代码
Jan 07 PHP
PHP开启gzip页面压缩实例代码
Mar 11 PHP
PHP 多维数组排序(usort,uasort)
Jun 30 PHP
WordPress中用于获取及自定义头像图片的PHP脚本详解
Dec 17 PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
Jun 02 PHP
实例讲解YII2中多表关联的使用方法
Jul 21 PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
Oct 25 PHP
PHP APP微信提现接口代码
Sep 30 PHP
laravel 实现根据字段不同值做不同查询
Oct 23 PHP
php与阿里云短信接口接入操作案例分析
May 27 PHP
goto语法在PHP中的使用教程
Sep 17 PHP
基于ThinkPHP5.0实现图片上传插件
Sep 25 #PHP
Laravel中encrypt和decrypt的实现方法
Sep 24 #PHP
php安装扩展mysqli的实现步骤及报错解决办法
Sep 23 #PHP
php mysql PDO 查询操作的实例详解
Sep 23 #PHP
PHP实现权限管理功能示例
Sep 22 #PHP
php生成毫秒时间戳的实例讲解
Sep 22 #PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
Sep 22 #PHP
You might like
IStream与TStream之间的相互转换
2008/08/01 PHP
php下pdo的mysql事务处理用法实例
2014/12/27 PHP
PHP实现获取客户端IP并获取IP信息
2015/03/17 PHP
首页图片漂浮效果示例代码
2014/06/05 Javascript
Javascript与jQuery方法的隐藏与显示
2015/01/19 Javascript
JavaScript中DOM详解
2015/04/13 Javascript
js+html5获取用户地理位置信息并在Google地图上显示的方法
2015/06/05 Javascript
JS实现网页游戏中滑块响应鼠标点击移动效果
2015/10/19 Javascript
jQuery动态添加及删除表单上传元素的方法(附demo源码下载)
2016/01/15 Javascript
jQuery基于ID调用指定iframe页面内的方法
2016/07/06 Javascript
基于CSS3和jQuery实现跟随鼠标方位的Hover特效
2016/07/25 Javascript
JS框架之vue.js(深入三:组件1)
2016/09/29 Javascript
bootstrap网格系统使用方法解析
2017/01/13 Javascript
jQuery实现分页功能(含ajax请求、后台数据、附完整demo)
2017/04/03 jQuery
详解nuxt sass全局变量(公共scss解决方案)
2018/06/27 Javascript
vue 双向数据绑定的实现学习之监听器的实现方法
2018/11/30 Javascript
layerui代码控制tab选项卡,添加,关闭的实例
2019/09/04 Javascript
JS使用正则表达式判断输入框失去焦点事件
2019/10/16 Javascript
原生JS实现音乐播放器
2021/01/26 Javascript
python中执行shell命令的几个方法小结
2014/09/18 Python
Python制作豆瓣图片的爬虫
2017/12/28 Python
python做量化投资系列之比特币初始配置
2018/01/23 Python
python使用Tesseract库识别验证
2018/03/21 Python
python使用Flask操作mysql实现登录功能
2018/05/14 Python
python验证码识别教程之利用投影法、连通域法分割图片
2018/06/04 Python
使用Python脚本zabbix自定义key监控oracle连接状态
2019/08/28 Python
Python类反射机制使用实例解析
2019/12/30 Python
python合并多个excel文件的示例
2020/09/23 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
Nike加拿大官网:Nike.com (CA)
2019/04/09 全球购物
大学生党员自我剖析材料
2014/10/06 职场文书
瘦西湖导游词
2015/02/03 职场文书
2016教师六五普法学习心得体会
2016/01/21 职场文书
党风廉政建设心得体会(2016最新版)
2016/01/22 职场文书
JavaScript组合继承详解
2021/11/07 Javascript
Redis唯一ID生成器的实现
2022/07/07 Redis