Thinkphp自定义生成缩略图尺寸的方法


Posted in PHP onAugust 05, 2019

Thinkphp自定义生成缩略图尺寸的方法,本实例中生成两张不同尺寸的图片:第一张是大图350*350,第二张 50*50的缩略图

Thinkphp自定义生成缩略图尺寸的方法

Image类是Thinkphp系统自带的,可以研究下,这个缩略图类很强大

function getLogo($logo, $width, $height, $name) { 
   $fileArr = pathinfo($logo); 
   $dirname = $fileArr['dirname']; 
   $filename = $fileArr['filename']; 
   $extension = $fileArr['extension']; 
   $logo_rs = ""; 
   if ($width > 0 && $height > 0) { 
     $name_thumb = $dirname . "/" . $filename . "_" . $width . "_" . $height . "." . $extension; 
     if (!file_exists($name_thumb)) { 
       if (file_exists($logo)) { 
         $image = new \Think\Image(); 
         $image->open($logo); 
         $image->thumb($width, $height)->save($name_thumb); 
       } else { 
         $name_thumb = ""; 
       } 
     } 
     if ($name_thumb) { 
       $logo_rs = $name_thumb; 
     } 
   } else { 
     $logo_rs = $logo; 
   } 
   if ($logo_rs) { 
     if ($name) { 
       return "<img src='" . __APP__ . "/" . $logo_rs . "' alt='" . $name . "'/>"; 
     } else { 
       return __APP__ . "/" . $logo_rs; 
     } 
   } 
 }

模版自定义缩略图高度和宽度:生成350*350的缩略图,其它尺寸同理

<img alt="350*350" src="{$logo|getLogo=###,350,350}" />

总结

以上所述是小编给大家介绍的Thinkphp自定义生成缩略图尺寸的方法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

PHP 相关文章推荐
用PHP制作静态网站的模板框架
Oct 09 PHP
BBS(php &amp; mysql)完整版(一)
Oct 09 PHP
解决中英文字符串长度问题函数
Jan 16 PHP
PHP cron中的批处理
Sep 16 PHP
php函数array_merge用法一例(合并同类数组)
Feb 03 PHP
PHP页面间参数传递的四种方法详解
Jun 09 PHP
ThinkPHP上使用多说评论插件的方法
Oct 31 PHP
PHP使用get_headers函数判断远程文件是否存在的方法
Nov 28 PHP
smarty内置函数config_load用法实例
Jan 22 PHP
详解Yii2 定制表单输入字段的标签和样式
Jan 04 PHP
详细解读php的命名空间(一)
Feb 21 PHP
PHP操作redis实现的分页列表,新增,删除功能封装类与用法示例
Aug 04 PHP
thinkphp5.1框架中容器(Container)和门面(Facade)的实现方法分析
Aug 05 #PHP
RSA实现JS前端加密与PHP后端解密功能示例
Aug 05 #PHP
thinkPHP5框架接口写法简单示例
Aug 05 #PHP
ThinkPHP5+UEditor图片上传到阿里云对象存储OSS功能示例
Aug 05 #PHP
PHP各种常见经典算法总结【排序、查找、翻转等】
Aug 05 #PHP
php时间戳转换代码详解
Aug 04 #PHP
ThinkPHP5.1框架数据库链接和增删改查操作示例
Aug 03 #PHP
You might like
discuz Passport 通行证 整合笔记
2008/06/30 PHP
Godaddy空间Zend Optimizer升级方法
2010/05/10 PHP
PHPMYADMIN导入数据最大为2M的解决方法
2012/04/23 PHP
php调用MySQL存储过程的方法集合(推荐)
2013/07/03 PHP
php 类自动载入的方法
2015/06/03 PHP
Smarty缓存机制实例详解【三种缓存方式】
2019/07/20 PHP
PHP实现统计代码行数小工具
2019/09/19 PHP
非主流的textarea自增长实现js代码
2011/12/20 Javascript
javascript特殊用法示例介绍
2013/11/29 Javascript
JS 仿腾讯发表微博的效果代码
2013/12/25 Javascript
js改变鼠标的形状和样式的方法
2014/03/31 Javascript
jquery修改网页背景颜色通过css方法实现
2014/06/06 Javascript
JS实现向表格中动态添加行的方法
2015/03/30 Javascript
使用CDN和AJAX加速WordPress中jQuery的加载
2015/12/05 Javascript
vue-cli项目优化方法- 缩短首屏加载时间
2018/04/01 Javascript
js隐式转换的知识实例讲解
2018/09/28 Javascript
Python-基础-入门 简介
2014/08/09 Python
Python实现八大排序算法
2016/08/13 Python
Python Tkinter模块实现时钟功能应用示例
2018/07/23 Python
深入了解Python枚举类型的相关知识
2019/07/09 Python
Ubuntu20下的Django安装的方法步骤
2021/01/24 Python
利用CSS3实现文字折纸效果实例代码
2018/07/10 HTML / CSS
草莓网官网:StrawberryNET
2019/08/21 全球购物
大二学生职业生涯规划书
2014/02/05 职场文书
抽样调查项目计划书
2014/04/24 职场文书
基层党支部公开承诺书
2014/05/29 职场文书
环保标语口号
2014/06/13 职场文书
2014年合同管理工作总结
2014/12/02 职场文书
小班教师个人总结
2015/02/05 职场文书
幼儿园推普周活动总结
2015/05/07 职场文书
学习新党章心得体会2016
2016/01/15 职场文书
为什么mysql字段要使用NOT NULL
2021/05/13 MySQL
Golang表示枚举类型的详细讲解
2021/09/04 Golang
mysql5.7的安装及Navicate长久免费使用的实现过程
2021/11/17 MySQL
Python标准库pathlib操作目录和文件
2021/11/20 Python
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js