PHP简单生成缩略图相册的方法


Posted in PHP onJuly 29, 2015

本文实例讲述了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 function thumb($image_path,$rate = 0.5){
    $this->src = $image_path;
    $this->source = imagecreatefromjpeg($image_path);
    $s_size = getimagesize($image_path);
    $this->s_height = $s_size[1];
    $this->s_width = $s_size[0];
    $this->d_height = 100;
    $this->d_width = 100;
    $this->dest = imagecreate($this->d_width, $this->d_height);
    $this->name = explode('.jpg', $image_path);
    $this->name = $this->name[0];
  }
  public function make(){
    imagecopyresized($this->dest, $this->source, 0, 0, 0, 0, $this->d_width, $this->d_height,
    $this->s_width, $this->s_height);
    $thumb = str_replace('image', 'thumb', $this->name.'-thumb.jpg');
    imagejpeg($this->dest,$thumb,100);
    $img = $thumb;
    echo "<a href=$this->src><img src=$img></a>";
  }
}
$hl = opendir(".\\image\\");
while(false != $file = readdir($hl)){
  if($file == '.' || $file == '..') continue;
  $path = '.\\image\\'.$file;
  $tmp = new thumb($path,0.3);
  $tmp->make();
}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
十天学会php之第二天
Oct 09 PHP
php的header和asp中的redirect比较
Oct 09 PHP
php类
Nov 27 PHP
set_include_path在win和linux下的区别
Jan 10 PHP
在PHP中检查PHP文件是否有语法错误的方法
Dec 23 PHP
一个比较不错的PHP日历类分享
Nov 18 PHP
php可应用于面包屑导航的迭代寻找家谱树实现方法
Feb 02 PHP
php实现可运算的验证码
Nov 10 PHP
PHP函数超时处理方法
Feb 14 PHP
php版交通银行网银支付接口开发入门教程
Sep 26 PHP
PHP jQuery+Ajax结合写批量删除功能
May 19 PHP
Laravel框架基础语法与知识点整理【模板变量、输出、include引入子视图等】
Dec 03 PHP
PHP之预定义接口详解
Jul 29 #PHP
PHP实现的迷你漂流瓶
Jul 29 #PHP
PHP之浮点数计算比较以及取整数不准确的解决办法
Jul 29 #PHP
PHP实现简单搜歌的方法
Jul 28 #PHP
PHP读取配置文件类实例(可读取ini,yaml,xml等)
Jul 28 #PHP
PHP实现简单的新闻发布系统实例
Jul 28 #PHP
PHP实现的memcache环形队列类实例
Jul 28 #PHP
You might like
php 文件上传系统手记
2009/10/26 PHP
php实现文件下载代码分享
2014/08/19 PHP
封装ThinkPHP的一个文件上传方法实例
2014/10/31 PHP
PHP计算日期相差天数实例分析
2016/02/23 PHP
php通过文件头判断格式的方法
2016/05/28 PHP
Laravel 6 将新增为指定队列任务设置中间件的功能
2019/08/06 PHP
JQuery在光标位置插入内容的实现代码
2010/06/18 Javascript
jQuery timers计时器简单应用说明
2010/10/28 Javascript
原生js事件的添加和删除的封装
2014/07/01 Javascript
将数字转换成大写的人民币表达式的js函数
2014/09/21 Javascript
PHP中CURL的几个经典应用实例
2015/01/23 Javascript
javascript高级编程之函数表达式 递归和闭包函数
2015/11/29 Javascript
JS根据浏览器窗口大小实时动态改变网页文字大小的方法
2016/02/25 Javascript
深入剖析javascript中的exec与match方法
2016/05/18 Javascript
js 打开新页面在屏幕中间的实现方法
2016/11/02 Javascript
nodejs6下使用koa2框架实例
2017/05/18 NodeJs
zTree获取当前节点的下一级子节点数实例
2017/09/05 Javascript
原生JS获取元素的位置与尺寸实现方法
2017/10/18 Javascript
微信小程序获取手机网络状态的方法【附源码下载】
2017/12/08 Javascript
Angular中点击li标签实现更改颜色的核心代码
2017/12/08 Javascript
js核心基础之构造函数constructor用法实例分析
2019/05/11 Javascript
jQuery Raty星级评分插件使用方法实例分析
2019/11/25 jQuery
vue-drawer-layout实现手势滑出菜单栏
2020/11/19 Vue.js
Pandas 同元素多列去重的实例
2018/07/03 Python
Python3爬虫全国地址信息
2019/01/05 Python
Python3.5以上版本lxml导入etree报错的解决方案
2019/06/26 Python
关于torch.optim的灵活使用详解(包括重写SGD,加上L1正则)
2020/02/20 Python
keras输出预测值和真实值方式
2020/06/27 Python
Eagle Eyes Optics鹰眼光学:高性能太阳镜
2018/12/07 全球购物
自荐信结尾
2013/10/27 职场文书
幼儿发展评估方案
2014/06/11 职场文书
2015年度物业公司工作总结
2015/04/27 职场文书
2016大学生形势与政策心得体会
2016/01/12 职场文书
会计入职心得体会
2016/01/22 职场文书
解决Vue+SpringBoot+Shiro跨域问题
2021/06/09 Vue.js
php实例化对象的实例方法
2021/11/17 PHP