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

相关推荐

  • IDC行业的套路太多了啊。我又被套路了,

    今天突然收到浪潮云的实名认证通知。又要实名、之前很多人都是直接买的别人认证好的、用了几个月。现在应该很多人都是同样的情况了吧。 去年浪潮云在搞这个活动的时候,力度挺大的,免费2500的试用金、网上有些人也通过这个赚了一笔,现在恐怕也找你去了吧? 我这还好点。我自己公司和朋友公司注册的 认证还简单点。其他用户只能搬迁数据了。(赶紧搬迁。防止服务器立刻停止) 以…

    2019年3月11日
    3.1K00
  • 【腾讯云】云产品采购季,助力行业复工。1核2G云服务器,首年优惠99元-腾讯云代理

    前言 新的一年开始了。腾讯云又开始了一轮新的活动。助力行业复苏 开工大礼包 共同战疫,新老用户均可一键领取,总价值8888元,新购、续费、升级不用愁活动地址 > 精选爆品助力 1核2G云服务器首年99元!更有百款产品助力复工,减低开工成本活动地址 > 企业复工专享 新企业用户专享,更高配置更高优惠,帮助中小企业共克时艰!活动地址 > 云服务…

    服务器优惠活动 2020年2月14日
    4.1K00
  • 26年新用户专享|528元抢3年!腾讯云轻量应用服务器2核4G6M,高性价比入门首选!

    创业团队、个人开发者、学生党注意!腾讯云重磅推出「轻量应用服务器」新用户专属福利——仅528元享3年服务(原价2790元),配置高达 2核CPU + 4GB内存 + 6M峰值带宽 + 70GB SSD + 600GB月流量,开箱即用,轻松部署网站、小程序后端、测试环境、博客系统……真正实现“小预算,大能力”! 为什么选择这款轻量应用服务器? 超高性…

    2026年4月27日
    36600
  • 腾讯云服务器活动购买优惠的方法分享

    分享腾讯云如何购买优惠 1:没有注册过会员的用户通过以下链接注册账号、选择邮箱注册、可以选择使用朋友、家人信息认证 (已购买过的用户不要在用老的身份信息认证了) 链接:注册地址:http://t.cn/E9x2C2k 第二种操作方法-通过账号关联进行绑定: 1:通过链接:http://t.cn/AipEk6xp 进行账号关联 2:关联以后、都可以下单 找客服…

    2019年6月26日
    4.1K00
  • 又一次rm -rf /*造成的惨剧! 学派吧

    据云头条报道,VPS 服务商 Kuriko 因 rm -rf /*,宿主机上所有数据丢失了。 Kuriko 4 月 24 日在其官网刊登香港 NAT 区故障声明,内容如下:由于机房技术的rm -rf /*,导致目前宿主机上所有数据丢失,我们正在尝试恢复原有数据以及获取备份资料,但恢复可能较小。目前该区域所有主机处于 OFFLINE 中。 rm 是 linux…

    建站问题 2018年10月17日
    3.5K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

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

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