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 相关文章推荐
dhtmlxTree目录树增加右键菜单以及拖拽排序的实现方法
Apr 26 PHP
PHP命令行脚本接收传入参数的三种方式
Aug 20 PHP
php绘制一条弧线的方法
Jan 24 PHP
PHP实现将浏览历史页面网址保存到cookie的方法
Jan 26 PHP
php简单统计字符串单词数量的方法
Jun 19 PHP
PHP实现获取某个月份周次信息的方法
Aug 11 PHP
PHP中读取文件的几个方法总结(推荐)
Jun 03 PHP
thinkPHP多语言切换设置方法详解
Nov 11 PHP
PHP更安全的密码加密机制Bcrypt详解
Jun 18 PHP
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
Nov 10 PHP
php代码调试利器firephp安装与使用方法分析
Aug 21 PHP
PhpSpreadsheet设置单元格常用操作汇总
Nov 13 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
PHP分页显示制作详细讲解
2008/11/19 PHP
PHP中的reflection反射机制测试例子
2014/08/05 PHP
PHP处理postfix邮件内容的方法
2015/06/16 PHP
PHP正则表达式入门教程(推荐)
2016/05/18 PHP
Centos7 Yum安装PHP7.2流程教程详解
2019/07/02 PHP
Laravel 5.4前后台分离,通过不同的二级域名访问方法
2019/10/13 PHP
jQuery 选择器项目实例分析及实现代码
2012/12/28 Javascript
clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切
2015/10/10 Javascript
WordPress中利用AJAX异步获取评论用户头像的方法
2016/01/08 Javascript
JS 通过系统时间限定动态添加 select option的实例代码
2016/06/09 Javascript
jQuery Validate 相关参数及常用的自定义验证规则
2017/03/06 Javascript
Angularjs自定义指令实现分页插件(DEMO)
2017/09/16 Javascript
js中bool值的转换及“&amp;&amp;”、“||”、 “!!”详解
2017/12/21 Javascript
element ui 对话框el-dialog关闭事件详解
2018/02/26 Javascript
angular第三方包开发整理(小结)
2018/04/19 Javascript
Vue.js如何使用Socket.IO的示例代码
2019/09/05 Javascript
前端vue-cli项目中使用img图片和background背景图的几种方法
2019/11/13 Javascript
jQuery 实现扁平式小清新导航
2020/07/07 jQuery
小程序实现简单语音聊天的示例代码
2020/07/24 Javascript
Python中os.path用法分析
2015/01/15 Python
Python3 XML 获取雅虎天气的实现方法
2018/02/01 Python
python微信跳一跳系列之自动计算跳一跳距离
2018/02/26 Python
Python可视化mhd格式和raw格式的医学图像并保存的方法
2019/01/24 Python
Python3 Tkinter选择路径功能的实现方法
2019/06/14 Python
解决Pycharm 包已经下载,但是运行代码提示找不到模块的问题
2019/08/31 Python
python seaborn heatmap可视化相关性矩阵实例
2020/06/03 Python
Django后端分离 使用element-ui文件上传方式
2020/07/12 Python
html5 offlline 缓存使用示例
2013/06/24 HTML / CSS
摩托车和ATV零件、配件和服装的首选在线零售商:MotoSport
2017/12/22 全球购物
Melissa鞋英国官方网站:Nonnon
2019/05/01 全球购物
物流专业大学应届生求职信
2013/11/03 职场文书
党员群众路线教育实践活动学习笔记
2014/11/05 职场文书
求职自荐信怎么写
2015/03/04 职场文书
高温慰问简报
2015/07/21 职场文书
2016年幼儿园教研活动总结
2016/04/05 职场文书
MySQL图形化管理工具Navicat安装步骤
2021/12/04 MySQL