使用ThinkPHP生成缩略图及显示


Posted in PHP onApril 27, 2017

使用ThinkPHP生成缩略图及显示,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

首先了解父类Image.class.php(ThinkPHP/Library/Think/Image.class.php)中的一些函数

1:open() 打开被处理的图片

2:thumb() 生成缩略图 默认1等比缩放  (其中2,3,4,5,6代表的含义参见父类文件Image.class.php)

3:save() 缩略图到服务器

生成缩略图步骤分以下四步

* 1.实例化
* 2.打开图片open()
* 3.生成缩略图thumb() 默认等比缩放
* 4.保存save()

控制器代码:

//大图路径(此处大图路径可参考上篇 “使用ThinkPHP实现附件上传”的上传路径)
$bigimg_path = $upload->rootPath.$file_info['savepath'].$file_info['savename'];
//小图路径
$smallimg_path = $upload->rootPath.$file_info['savepath'].'small_'.$file_info['savename'];

$img = new \Think\Image(); //实例化
$img->open($bigimg_path); //打开被处理的图片
$img->thumb(100,100); //制作缩略图(100*100)
$img->save($smallimg_path); //保存缩略图到服务器

//把上传好的附件及缩略图存到数据库
$_POST['goods_big_img']=$bigimg_path;
$_POST['goods_small_img']=$smallimg_path;

入口文件设置常量

为前台显示缩略图路径方便,在入口文件index.php设置常量,表示站点路径,和数据库存放的图片路径拼接

define('SITE_URL', 'http://www.tp.com/TP/shop/');

前台显示大图及缩略图

<td><!-- 大图 -->
 <img src="<{$smarty.const.SITE_URL}><{$v.goods_big_img}>" height="60" width="60">
</td>
<td><!-- 小图 -->
 <img src="<{$smarty.const.SITE_URL}><{$v.goods_small_img}>" height="40" width="40">
</td>

结果

数据库里存放路径

使用ThinkPHP生成缩略图及显示

图片

使用ThinkPHP生成缩略图及显示

前台显示

使用ThinkPHP生成缩略图及显示

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP MSSQL 存储过程的方法
Dec 24 PHP
PHP程序员面试 切忌急功近利(更需要注重以后的发展)
Sep 01 PHP
php下安装配置fckeditor编辑器的方法
Mar 02 PHP
php返回json数据函数实例
Oct 09 PHP
ThinkPHP中redirect用法分析
Dec 05 PHP
php查看当前Session的ID实例
Mar 16 PHP
PHP处理postfix邮件内容的方法
Jun 16 PHP
PHP闭包函数传参及使用外部变量的方法
Mar 15 PHP
利用Laravel事件系统如何实现登录日志的记录详解
May 20 PHP
PHP检查网站是否宕机的方法示例
Jul 24 PHP
Laravel 5.4向IoC容器中添加自定义类的方法示例
Aug 15 PHP
php写app用的框架整理
Sep 29 PHP
php实现头像上传预览功能
Apr 27 #PHP
php文件上传及下载附带显示文件及目录功能
Apr 27 #PHP
phpMyAdmin无法登陆的解决方法
Apr 27 #PHP
利用phpexcel对数据库数据的导入excel(excel筛选)、导出excel
Apr 27 #PHP
PHP实现网页内容html标签补全和过滤的方法小结【2种方法】
Apr 27 #PHP
PHP实现的常规正则验证helper公共类完整实例
Apr 27 #PHP
php上传excel表格并获取数据
Apr 27 #PHP
You might like
微信自定义菜单的创建/查询/取消php示例代码
2016/08/05 PHP
php实现构建排除当前元素的乘积数组方法
2018/10/06 PHP
Laravel 自定命令以及生成文件的例子
2019/10/23 PHP
使用JQuery进行跨域请求
2010/01/25 Javascript
js控制table合并具体实现
2014/02/20 Javascript
浅谈 jQuery 事件源码定位问题
2014/06/18 Javascript
javascript实现的一个随机点名功能
2014/08/26 Javascript
JavaScript实现梯形乘法表的方法
2015/04/25 Javascript
AngularJS模块学习之Anchor Scroll
2016/01/19 Javascript
js中window.open的参数及注意注意事项
2016/07/06 Javascript
js轮盘抽奖实例分析
2020/04/17 Javascript
jQuery flip插件实现的翻牌效果示例【附demo源码下载】
2016/09/20 Javascript
Jquery UI实现一次拖拽多个选中的元素操作
2020/12/01 Javascript
JS实现点击复选框变更DIV显示状态的示例代码
2017/12/18 Javascript
React中常见的动画实现的几种方式
2018/01/10 Javascript
关于TypeScript模块导入的那些事
2018/06/12 Javascript
JavaScript多态与封装实例分析
2018/07/27 Javascript
Vue刷新修改页面中数据的方法
2018/09/16 Javascript
使用Promise封装小程序wx.request的实现方法
2019/11/13 Javascript
JavaScript 如何计算文本的行数的实现
2020/09/14 Javascript
原生JavaScript实现购物车
2021/01/10 Javascript
详解Python的Django框架中manage命令的使用与扩展
2016/04/11 Python
django实现用户登陆功能详解
2017/12/11 Python
Python Django框架模板渲染功能示例
2019/11/08 Python
信号生成及DFT的python实现方式
2020/02/25 Python
python drf各类组件的用法和作用
2021/01/12 Python
香港化妆品经销商:我的公主
2016/08/05 全球购物
英国假发网站:Hothair
2018/02/23 全球购物
MAC彩妆英国官网:M·A·C UK
2018/05/30 全球购物
工厂门卫岗位职责
2013/11/25 职场文书
小学国庆节活动方案
2014/02/11 职场文书
企业承诺书格式范文
2015/04/28 职场文书
网吧温馨提示
2015/07/17 职场文书
Golang 实现获取当前函数名称和文件行号等操作
2021/05/08 Golang
vue3使用vue-router的完整步骤记录
2021/06/20 Vue.js
MSSQL基本语法操作
2022/04/11 SQL Server