博客
关于我
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锁机制,主从复制
查看>>
Mysql锁机制,行锁表锁
查看>>
Mysql锁(2):表级锁
查看>>
MySQL错误提示mysql Statement violates GTID consistency
查看>>
MySQL集群解决方案(4):负载均衡
查看>>
mysql面试题学校三表查询_mysql三表查询分组后取每组最大值,mysql面试题。
查看>>
Mysql面试题精选
查看>>
MySQL面试题集锦
查看>>
mysql面试题:为什么MySQL单表不能超过2000W条数据?
查看>>
mysql面试题:创建索引时会不会锁表?
查看>>
mysql颠覆实战笔记(八)--mysql的自定义异常处理怎么破
查看>>
mysql驱动、durid、mybatis之间的关系
查看>>
mysql驱动支持中文_mysql 驱动包-Go语言中文社区
查看>>
MySQL高可用切换_(5.9)mysql高可用系列——正常主从切换测试
查看>>
MySQL高可用解决方案详解
查看>>
MYSQL高可用集群MHA架构
查看>>
MySQL高级-MySQL并发参数调整
查看>>
MySQL高级-MySQL查询缓存优化
查看>>
MySQL高级-MySQL锁
查看>>
MySQL高级-SQL优化
查看>>