欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

用ThinkPHP生成缩略图并显示

程序员文章站 2022-05-01 17:25:50
...
这篇文章主要为大家详细介绍了使用ThinkPHP生成缩略图及显示的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

使用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中文网!

相关推荐:

关于Thinkphp3.2简单解决多文件上传以及只上传一张的问题解析

关于ThinkPHP打水印及设置水印位置的分析

如何利用thinkphp获取客户端IP

以上就是用ThinkPHP生成缩略图并显示的详细内容,更多请关注其它相关文章!

相关标签: thinkphp 缩略图