php使用timthumb生成缩略图的方法
本文实例讲述了php使用timthumb生成缩略图的方法。分享给大家供大家参考,具体如下:
生成缩列图有二种方式:
一、提前生成好,供调用
缩列图常规做法是,开始根据网站中的图片规格,要生成多少种缩列图,图片上传过程中就会生成缩列,供不同需求去调用。像这种方法有一点不好就是,如果增加图片规格以后,以前上传的图片没有该规格的,还要重新生成。
二、调用的时候在生成缩列图。这也是我写这篇文章原因。
推荐一个timthumb,个人觉得在不考虑性能,效率的情况下,这个东西,绝对是好用的。
1,下载地址:http://timthumb.googlecode.com/svn/trunk/timthumb.php
2,使用方法
下载下来后,放到你的web环境中,在与timthumb.php平行的目录中建一个cache文件夹,给于755权限,windows的话,就不用了。测试代码如下:
<?php $image = "http://localhost/test/pen_pic03.png"; ?> <html> <head> <title>timthumb</title> </head> <body> <img src="http://localhost/test/timthumb.php?src=<?php echo $image; ?>&w=58&h=46&zc=1" alt="" /> </body> </html>
参数说明:
w=58 表示图片宽为58
h=46 表示图片高为46
可以根据需要,随便设置。
timthumb最大的优点就是方便,目前还没有遇到过这样的工具,缺点同样明显,每次请求的时候,都会调用php-cgi或者是php-cli,缓存的数据放在cache目录下,调用数据要去查找目录,性能上会比较低。
希望本文所述对大家PHP程序设计有所帮助。
相关推荐
-
php实现根据url自动生成缩略图的方法
本文实例讲述了php实现根据url自动生成缩略图的方法,是非常实用的功能.分享给大家供大家参考.具体方法如下: 原理:设置apache rewrite ,当图片不存在时,调用php创建图片. 例如: 原图路径为:http://localhost/upload/news/2013/07/21/1.jpg 缩略图路径为:http://localhost/supload/news/2013/07/21/1.jpg 当访问 http://localhost/supload/news/2013/07/21
-
PHP简单生成缩略图相册的方法
本文实例讲述了PHP简单生成缩略图相册的方法.分享给大家供大家参考.具体如下: <?php /* * written by mot * 根目录下自己新建image thumb目录 * */ class thumb{ private $src; private $source; private $s_width; private $s_height; private $dest; private $d_height; private $d_width; private $name; public
-
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
裁剪示例: 最终裁剪成的图片: 其中虚线框内就是要裁剪出来的图片,最终保存成100宽的图片.代码如下: 复制代码 代码如下: $src_path = '1.jpg';//创建源图的实例$src = imagecreatefromstring(file_get_contents($src_path)); //裁剪开区域左上角的点的坐标$x = 100;$y = 12;//裁剪区域的宽和高$width = 200;$height = 200;//最终保存成图片的宽和高,和源要等比例,否则会变形$fi
-
php上传图片生成缩略图(GD库)
首先来一段简单的php上传图片生成缩略图的详细代码,分享给大家供大家参考,具体内容如下 <?php function createThumbnail($imageDirectory, $imageName, $thumbDirectory, $thumbWidth, $quality){ $details = getimagesize("$imageDirectory/$imageName") or die('Please only upload images.'); $type
-
php 根据url自动生成缩略图并处理高并发问题
服务器生成缩略图的时机一般分为两种: 1.上传文件时生成 优点:上传时就已经生成需要的缩略图,读取时不需要再判断,减少cpu运算. 缺点:当缩略图尺寸变化时或新增尺寸时,需要重新生成所有的缩略图. 2.访问时生成 优点:1.当有用户访问时才需要生成,没有访问的不用生成,节省空间. 2.当修改缩略图尺寸时,只需要修改设置,无需重新生成所有缩略图. 缺点:当缩略图不存在需要生成时,高并发访问会非常耗服务器资源. 虽然访问时生成会有高并发问题,但其他优点都比第一种方法好,因此只要解决高并发问题就可以.
-
php可生成缩略图的文件上传类实例
本文实例讲述了php可生成缩略图的文件上传类及其用法.分享给大家供大家参考.具体实现方法如下: 类文件调用方法如下: 复制代码 代码如下: <?php if ($_GET['action'] == 'save') { $up = new upload(); $up->set_dir(dirname(__FILE__).'/upload/','{y}/{m}'); $up->set_thumb(100,
-
php利用GD库生成缩略图示例
php利用GD库生成缩略图. 复制代码 代码如下: <form method="post" action="suo_do.php" enctype="multipart/form-data"> <input type="file" name="pic" /> <input type="submit" value="上传1" /> &
-
PHP实现原比例生成缩略图的方法
本文实例讲述了PHP实现原比例生成缩略图的方法.分享给大家供大家参考,具体如下: <?php $image = "jiequ.jpg"; // 原图 $imgstream = file_get_contents($image); $im = imagecreatefromstring($imgstream); $x = imagesx($im);//获取图片的宽 $y = imagesy($im);//获取图片的高 // 缩略后的大小 $xx = 140; $yy = 200;
-
php实现上传图片生成缩略图示例
功能很简单,代码中有注释,直接给大家上代码了 复制代码 代码如下: <?php/** * 上传图片生成缩略图 * * 需要GD2库的支持 * * 初始化时需要参数new thumbnails('需要缩略的图片的原始地址','缩略图的宽度','缩略图的高度','(可选参数)缩略图的保存路径'); * 如果最后一个参数不指定,那么缩略图就默认保存在原始图片的所在目录里的small文件夹里, * 如果不存在small文件夹,则会自动创建small文件夹 * * 初始化之后需要调用方法produc
-
Thinkphp调用Image类生成缩略图的方法
本文实例讲述了Thinkphp调用Image类生成缩略图的方法.分享给大家供大家参考.具体分析如下: Thinkphp的Image类 在ThinkPHP/Extend/Library/ORG/Util/Image.class.php中. 调用方法如下: import("ORG.Util.Image"); $Img = new Image();//实例化图片类对象 $image_path = './图片路径'; //若当前php文件在Thinkphp的中APP_PATH路径中 //'./
-
php动态生成缩略图并输出显示的方法
本文实例讲述了php动态生成缩略图并输出显示的方法.分享给大家供大家参考.具体如下: 调用方法: <img src="thumbs.php?filename=photo.jpg&width=100&height=100"> 此代码可以为大图片动态生成缩略图显示,图片在内存中生成,不在硬盘生成真实文件 thumbs.php文件如下: <?php $filename= $_GET['filename']; $width = $_GET['width'];
随机推荐
- at命令的详细用法
- Java线程同步、同步方法实例详解
- iOS中的UIStepper数值加减器用法指南
- iOS 实现模糊搜索的功能
- Oracle 10g安装配置方法图文教程
- 值得分享的bootstrap table实例
- 如何用javascript正则表达式验证身份证号码是否合法
- Android开发之ListView实现Item局部刷新
- winform树形菜单无限级分类实例
- 基于Android XML解析与保存的实现
- php 用sock技术发送邮件的函数
- Linux查看系统版本的方法汇总
- JQuery跨Iframe选择实现代码
- jquery获取tagName再进行判断
- android调用国家气象局天气预报接口json数据格式解释
- 使用AmplifyJS组件配合JavaScript进行编程的指南
- js去除重复字符串两种实现方法
- 基于反射解决类复制的实现方法
- Java 普通代码块静态代码块执行顺序(实例讲解)
- 利用Thumbnailator轻松实现图片缩放、旋转与加水印