博客
关于我
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/

你可能感兴趣的文章
MQTT工作笔记0007---剩余长度
查看>>
MQTT工作笔记0009---订阅主题和订阅确认
查看>>
Mqtt搭建代理服务器进行通信-浅析
查看>>
MS Edge浏览器“STATUS_INVALID_IMAGE_HASH“兼容性问题
查看>>
ms sql server 2008 sp2更新异常
查看>>
MS UC 2013-0-Prepare Tool
查看>>
MSBuild 教程(2)
查看>>
msbuild发布web应用程序
查看>>
MSB与LSB
查看>>
MSCRM调用外部JS文件
查看>>
MSCRM调用外部JS文件
查看>>
MSEdgeDriver (Chromium) 不适用于版本 >= 79.0.313 (Canary)
查看>>
MsEdgeTTS开源项目使用教程
查看>>
msf
查看>>
MSSQL数据库查询优化(一)
查看>>
MSSQL数据库迁移到Oracle(二)
查看>>
MSSQL日期格式转换函数(使用CONVERT)
查看>>
MSTP多生成树协议(第二课)
查看>>
MSTP是什么?有哪些专有名词?
查看>>
Mstsc 远程桌面链接 And 网络映射
查看>>