thinkphp上传图片及生成缩略图

[v_error]一、上传图片的HTML代码[/v_error]

  
  
      
          
        upload  
      
      
        thinkphp上传图片及生成缩略图  
     
    

[v_error]一定要注意的是,form表单的属性一定要写上,缺一不可。[/v_error]

method='post' enctype="multipart/form-data"  

[v_error]二、上传图片后再生成缩略图保存[/v_error]
thinkphp上传图片及生成缩略图
[v_warn]出现如上所示问题,是因为根目录不存在,$upload->rootPath的默认根目录为当前项目下的Uploads文件夹,即:”./Uploads/”;

可以手动创建,也可以将根目录修改为已经存在的目录。[/v_warn]

if (!empty($_FILES)) {  
        $upload = new \Think\Upload();// 实例化上传类  
        $upload->maxSize = 2048000;             //上传文件最大大小  
        $upload->allowExts = array('jpg','jpeg','gif','png');//允许上传文件类型  
        $upload->rootPath = "./Application/Home/Public/";  //文件保存根目录,可以自定义  
        $upload->savePath = "Uploads/";                //文件保存目录  
        $upload->replace = 'true';                      //可以替换相同名称的文件  
        $upload->saveName = 'image';  
        $file = $upload->upload()['image'];  
        if(!$file){  
            $this->error($upload->getError());//获取失败信息  
        } else {  
            $img = "./Application/Home/Public/".$file['savepath'].$file['savename'];//获取文件上传目录  
            $image = new \Think\Image();   
            $image->open($img);    //打开上传图片  
            $image->thumb(102, 142,\Think\Image::IMAGE_THUMB_FIXED)->save($desitination.'thumb.jpg');//生成缩略图  
        }  
}  

[v_error]
三、生成缩略图之后再保存缩略图[/v_error]
图片上传过程中,直接对上传文件暂存目录下的图片进行处理,生成缩略图并保存,则原图片就不再保存,减少内存的消耗。

public function img(){  
        $name = $_FILES['image']['tmp_name'];//从上传文件暂存目录下读取文件  
        $image = new \Think\Image();   
        $image->open($name);//生成缩略图  
        $image->thumb(102, 142,\Think\Image::IMAGE_THUMB_FIXED)->save('./image.jpg');  
   }

并且支持多种类型的缩略图生成,设置包括Think\Image的下列常量或者对应的数字

IMAGE_THUMB_SCALE = 1 ; //等比例缩放类型
IMAGE_THUMB_FILLED = 2 ; //缩放后填充类型
IMAGE_THUMB_CENTER = 3 ; //居中裁剪类型
IMAGE_THUMB_NORTHWEST = 4 ; //左上角裁剪类型
IMAGE_THUMB_SOUTHEAST = 5 ; //右下角裁剪类型
IMAGE_THUMB_FIXED = 6 ; //固定尺寸缩放类型

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/huodong/55.html

(0)
打赏 微信扫一扫 微信扫一扫
云大使的头像云大使
上一篇 2018年4月3日 下午8:37
下一篇 2018年5月6日 下午4:24

相关推荐

  • 阿里云优惠券礼包-秒杀团购活动-阿里云云服务器低至234一年

    一年一度的双11活动都来了。各家IDC开始了新的一轮价格战、各位网友都不要错过了。。阿里云团购秒杀。低至234一年。个人购买300多一年。 领取礼包 阿里云代金券 阿里云拼团特价服务器 [v_error]这里要说明的是一人只能参加一次。如果还想参加,请换个家人朋友的身份信息进行认证 [/v_error] 活动产品 这几款适合新建站的朋友、如果网站流量不小、或…

    2018年10月26日
    3.2K00
  • 宝塔收费插件免费领取-免费专业版领取-宝塔专业版特价活动

    宝塔活动 首次宝塔定义活动节日。 7.24 有这样一群人,每周7天,每天24小时待命,为了感恩这群默默付出的运维人,把每年的7月24日定为运维节 参团地址:加入链接:http://www.bt.cn/724?group_id=NTQxNzJ6eg==   活动规则 参团地址:加入链接:http://www.bt.cn/724?group_id=NT…

    2019年7月16日
    4.7K00
  • 腾讯云最新轻量云专场4核4G3M,新用户首年仅需79元/年

    爆品秒杀 · 新用户专享 简单易用,高性价比套餐,一键部署热门应用,支持IPv6,免费独立公网IP。新用户享超低折扣,低至79元/年! 严选特惠 · 企业专区简单易用,高性价比套餐,一键部署热门应用,支持IPv6,免费独立公网IP。企业用户最低2.5折! 能力对比 不止于「轻」,简单易用但五脏俱全 传统VPS 轻量应用服务器 系统镜像部分支持,仅提供部分系统…

    2026年1月5日
    32400
  • 腾讯云服务器企业免费升级教程分享2核8G升级4核8G

    福利 腾讯云如何购买经济实惠的高配服务器 我们以操作过的经验分享、2核8G、北京区  广州区 可以免费升级4核8G 如已注册过的企业账号、可以领取个代金券: 必须是新账号、没有下过订单的、 腾讯云2860代金券:https://curl.qcloud.com/veTHvZHt 下面开始操作。 打开链接注册会员 https://curl.qcloud.com/…

    服务器优惠活动 2021年9月11日
    3.3K00
  • 国内免费空间-免费虚拟主机-快来领取吧

    商祺云-一家专业的云计算分销商-专业做阿里云-腾讯云-景安云-以优惠的价格服务大众客户,给中小站长,企业提供最划算的服务 现开展免费赠送虚拟主机活动。 免费空间领取1 通过关联腾讯云账号:即可免费领取虚拟主机一个。 关联地址:http://t.cn/AipEk6xp 选择与我们关联以后,提供截图 联系 QQ 690624 进行索取空间  不限制次数 领取空间…

    2018年9月8日
    7.8K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部
---------官方优惠叠加渠道折扣:通过我们购买腾讯云/阿里云,价格更低,服务更优。更有专业配置指导与服务。微信同步:18838889666----