博客
关于我
Thinkphp3.2.3 多图上传,同类型只能上传一张问题
阅读量:374 次
发布时间:2019-03-05

本文共 1724 字,大约阅读时间需要 5 分钟。

Thinkphp3.2.3 多图上传,同类型只能上传一张问题,

例如一次性上传多张 .jpg 文件,只能上传最后一张,
问题在于,同名,只保存一张,找了很多方法,问题就在于 saveName 上

在 App->Common->Common->function.php 下加入

function guid(){    if (function_exists('com_create_guid')) {        return com_create_guid();    } else {        mt_srand((double) microtime() * 10000);        $charid = strtoupper(md5(uniqid(rand(), true)));        $hyphen = chr(45);        $uuid   = chr(123)        . substr($charid, 0, 8) . $hyphen        . substr($charid, 8, 4) . $hyphen        . substr($charid, 12, 4) . $hyphen        . substr($charid, 16, 4) . $hyphen        . substr($charid, 20, 12)        . chr(125);        return $uuid;    }}

再在 upload方法中 saveName = array(‘guid’, ‘’);

完整代码如下

public function upload(){    $upload           = new \Think\Upload();    $upload->maxSize  = 0;    $upload->exts     = array('jpg', 'gif', 'png', 'jpeg');    $upload->rootPath = './Public/upload/';    $upload->savePath = 'thumb/';    // $now              = $_SERVER['REQUEST_TIME'];    $upload->saveName = array('guid', '');    $info = $upload->upload();    if (!$info) {        $this->error($upload->getError());    } else {        $this->success('上传成功!');    }}

前端代码

上面出来的图片路径是 {5141258E-8008-E064-26EB-4EC6642B71AB} 这样的,我们优化一下,把左右的 大括号去掉,并把中划线改成下划线。

if (function_exists('com_create_guid')) {    return com_create_guid();} else {    mt_srand((double) microtime() * 10000);    $charid = strtoupper(md5(uniqid(rand(), true)));    $hyphen = chr(95); //下划线    $uuid   = substr($charid, 0, 8) . $hyphen    . substr($charid, 8, 4) . $hyphen    . substr($charid, 12, 4) . $hyphen    . substr($charid, 16, 4) . $hyphen    . substr($charid, 20, 12);    return $uuid;}

这样就变成 C4D414B3_D751_173B_BCD9_F8C8CE95C5F5.jpg

转载地址:http://qtdwz.baihongyu.com/

你可能感兴趣的文章
MySQL中ON DUPLICATE KEY UPDATE的介绍与使用、批量更新、存在即更新不存在则插入
查看>>
MYSQL中TINYINT的取值范围
查看>>
MySQL中UPDATE语句的神奇技巧,让你操作数据库如虎添翼!
查看>>
Mysql中varchar类型数字排序不对踩坑记录
查看>>
MySQL中一条SQL语句到底是如何执行的呢?
查看>>
MySQL中你必须知道的10件事,1.5万字!
查看>>
MySQL中使用IN()查询到底走不走索引?
查看>>
Mysql中使用存储过程插入decimal和时间数据递增的模拟数据
查看>>
MySql中关于geometry类型的数据_空的时候如何插入处理_需用null_空字符串插入会报错_Cannot get geometry object from dat---MySql工作笔记003
查看>>
mysql中出现Incorrect DECIMAL value: '0' for column '' at row -1错误解决方案
查看>>
mysql中出现Unit mysql.service could not be found 的解决方法
查看>>
mysql中出现update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在 dpkg: 处理软件包 mysql-server-8.0的解决方法(全)
查看>>
Mysql中各类锁的机制图文详细解析(全)
查看>>
MySQL中地理位置数据扩展geometry的使用心得
查看>>
Mysql中存储引擎简介、修改、查询、选择
查看>>
Mysql中存储过程、存储函数、自定义函数、变量、流程控制语句、光标/游标、定义条件和处理程序的使用示例
查看>>
mysql中实现rownum,对结果进行排序
查看>>
mysql中对于数据库的基本操作
查看>>
Mysql中常用函数的使用示例
查看>>
MySql中怎样使用case-when实现判断查询结果返回
查看>>