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桌面中心(三) 修改数据库
Mar 11 PHP
PHP 分页类(模仿google)-面试题目解答
Sep 13 PHP
php 应用程序安全防范技术研究
Sep 25 PHP
php中$this-&amp;gt;含义分析
Nov 29 PHP
PHP文件读写操作之文件读取方法详解
Jan 13 PHP
PHP错误Cannot use object of type stdClass as array in错误的解决办法
Jun 12 PHP
PHP查询附近的人及其距离的实现方法
May 11 PHP
Yii模型操作之criteria查找数据库的方法
Jul 15 PHP
php安装ssh2扩展的方法【Linux平台】
Jul 20 PHP
使用phpQuery获取数组的实例
Mar 13 PHP
PHP bin2hex()函数基础实例讲解
Feb 11 PHP
PHP使用PDO实现mysql防注入功能详解
Dec 20 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 Web木马扫描器代码分享
2015/09/06 PHP
PHP 的Opcache加速的使用方法
2017/12/29 PHP
通过实例解析PHP数据类型转换方法
2020/07/11 PHP
document.documentElement &amp;&amp; document.documentElement.scrollTop
2007/12/01 Javascript
javascript 数据类型转换(parseInt,parseFloat)
2010/07/20 Javascript
ajax java 实现自动完成功能
2012/12/19 Javascript
制作jquery遮罩层效果导航菜单代码分享
2013/12/25 Javascript
详解Javascript中的Object对象
2016/02/28 Javascript
JS获取IE版本号与HTML设置IE文档模式的方法
2016/10/09 Javascript
js关于getImageData跨域问题的解决方法
2016/10/14 Javascript
如何使用Vuex+Vue.js构建单页应用
2016/10/27 Javascript
微信小程序 封装http请求实例详解
2017/01/16 Javascript
JS变量及其作用域
2017/03/29 Javascript
Three.js利用性能插件stats实现性能监听的方法
2017/09/25 Javascript
JS伪继承prototype实现方法示例
2018/06/20 Javascript
vue实现通讯录功能
2018/07/14 Javascript
React+Webpack快速上手指南(小结)
2018/08/15 Javascript
监听angularJs列表数据是否渲染完毕的方法示例
2018/11/07 Javascript
如何解决webpack-dev-server代理常切换问题
2019/01/09 Javascript
webpack 代码分离优化快速指北
2019/05/18 Javascript
在Layui中实现开关按钮的效果实例
2019/09/29 Javascript
小程序使用wxs解决wxml保留2位小数问题
2019/12/13 Javascript
[01:10:57]Liquid vs OG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
简单介绍Python的Tornado框架中的协程异步实现原理
2015/04/23 Python
Django 浅谈根据配置生成SQL语句的问题
2018/05/29 Python
django 微信网页授权登陆的实现
2019/07/30 Python
Python 将json序列化后的字符串转换成字典(推荐)
2020/01/06 Python
基于python代码批量处理图片resize
2020/06/04 Python
tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this T
2020/06/22 Python
python 检测图片是否有马赛克
2020/12/01 Python
8款精美的CSS3表单设计(登录表单/下拉选择/按钮附演示及源码)
2013/02/04 HTML / CSS
股权转让意向书
2014/04/01 职场文书
2015年度优秀员工推荐信
2015/03/23 职场文书
毕业生求职自荐信(2016最新版)
2016/01/28 职场文书
创业开店,这样方式更合理
2019/08/26 职场文书
python游戏开发Pygame框架
2022/04/22 Python