当前位置:首页 > CMS教程 > Thinkphp > 列表

thinkphp3.2.2实现生成多张缩略图的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-05-04 13:56:38 浏览: 评论:0 

这篇文章主要介绍了thinkphp3.2.2实现生成多张缩略图的方法,通过调用ThinkPHP扩展包的UploadFile类实现针对上传图片的缩略图处理,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了thinkphp3.2.2实现生成多张缩略图的方法。分享给大家供大家参考。

具体实现方法如下:

  1. public function dz_upload() { //上传多张缩略图   上传2张缩略图  
  2.    if (isset($_FILES['ori_img'])){  
  3.    $upload = new \Think\UploadFile();// 实例化上传类  
  4.    $upload->maxSize = 3000000 ;// 设置附件上传大小  C('UPLOAD_SIZE');   
  5.    //$upload->savePath = './Public/Uploads/' . $path; // 设置附件上传目录  
  6.    $upload->savePath = './Public/Uploads/' . 'thumb/'// 设置附件上传目录  
  7.    $upload->allowExts = array('jpg''gif''png''jpeg'); // 设置附件上传类型  
  8.    $upload->saveRule = 'time';  
  9.    $upload->uploadReplace = true; //是否存在同名文件是否覆盖  
  10.    $upload->thumb = true; //是否对上传文件进行缩略图处理  
  11.    $upload->thumbMaxWidth = '100,300'//缩略图处理宽度  
  12.    $upload->thumbMaxHeight = '50,150'//缩略图处理高度  
  13.    //$upload->thumbPrefix = $prefix; //缩略图前缀  
  14.    $upload->thumbPrefix = 'm_,s_';  //生产2张缩略图  
  15.    //$upload->thumbPath = './Public/Uploads/' . $path . date('Ymd', time()) . '/'; //缩略图保存路径  
  16.    $upload->thumbPath = './Public/Uploads/' . 'thumb/' . date('Ymd', time()) . '/'//缩略图保存路径  
  17.     
  18.   //$upload->thumbRemoveOrigin = true; //上传图片后删除原图片  
  19.    $upload->thumbRemoveOrigin = false; //上传图片后删除原图片  
  20.    $upload->autoSub = true; //是否使用子目录保存图片  
  21.    $upload->subType = 'date'//子目录保存规则  
  22.    $upload->dateFormat = 'Ymd'//子目录保存规则为date时时间格式  
  23.    if (!$upload->upload()) {// 上传错误提示错误信息  
  24.        echo json_encode(array('msg' => $this->error($upload->getErrorMsg()), 'status' => 0));  
  25.    } else {// 上传成功 获取上传文件信息  
  26.        $info = $upload->getUploadFileInfo();  
  27.        $picname = $info[0]['savename'];  
  28.  
  29.        $picname = explode('/'$picname);  
  30.        //$picname = $picname[0] . '/' . $prefix . $picname[1];  
  31.        $picname = $picname[0] . '/' . '_hz' . $picname[1];  
  32.        print_r($picname);  
  33.        echo json_encode(array('status' => 1, 'msg' => $picname)); 
  34.    }  
  35.  }  

调用方法:

$k=A("Index"); // 调用控制器Index 的koo方法 重点(lish)

$slt=$k->dz_upload();

这里要注意thinkphp3.2.2并没有UploadFile,UploadImage 类,需要从扩展包里提取出来再自己加入,把他们放到ThinkPHP\Library\Think目录下.

Tags: thinkphp3 2 2多张缩略图

分享到: