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

你可能感兴趣的文章
Node-RED中使用node-random节点来实现随机数在折线图中显示
查看>>
Node-RED中使用node-red-browser-utils节点实现选择Windows操作系统中的文件并实现图片预览
查看>>
Node-RED中使用node-red-contrib-image-output节点实现图片预览
查看>>
Node-RED中使用node-red-node-ui-iframe节点实现内嵌iframe访问其他网站的效果
查看>>
Node-RED中使用Notification元件显示警告讯息框(温度过高提示)
查看>>
Node-RED中使用range范围节点实现从一个范围对应至另一个范围
查看>>
Node-RED中实现HTML表单提交和获取提交的内容
查看>>
Vue3+elementplus实现图片上传下载(最强实践)
查看>>
Node-RED中将CSV数据写入txt文件并从文件中读取解析数据
查看>>
Node-RED中建立TCP服务端和客户端
查看>>
Node-RED中建立Websocket客户端连接
查看>>
Node-RED中建立静态网页和动态网页内容
查看>>
Vue3+Element-ul学生管理系统(第二十二课)
查看>>
Node-RED中怎样让网站返回JSON数据
查看>>
Node-RED中根据HTML文件建立Web网站
查看>>
Node-RED中解析高德地图天气api的json数据显示天气仪表盘
查看>>
Node-RED中连接Mysql数据库并实现增删改查的操作
查看>>