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 26 PHP
PHP程序漏洞产生的原因分析与防范方法说明
Mar 06 PHP
跟我学Laravel之配置Laravel
Oct 15 PHP
PHP使用glob函数遍历目录或文件夹的方法
Dec 16 PHP
Laravel 5框架学习之Blade 简介
Apr 08 PHP
PHP使用redis实现统计缓存mysql压力的方法
Nov 14 PHP
Symfony2实现在doctrine中内置数据的方法
Feb 05 PHP
Yii框架上传图片用法总结
Mar 28 PHP
Thinkphp框架开发移动端接口(2)
Aug 18 PHP
php 删除指定文件夹的实例讲解
Jul 25 PHP
Laravel中七个非常有用但很少人知道的Carbon方法
Sep 21 PHP
PHP排序算法之简单选择排序(Simple Selection Sort)实例分析
Apr 20 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入门学习笔记之一
2010/10/12 PHP
safari下载文件自动加了html后缀问题
2018/11/09 PHP
PHP使用mysqli同时执行多条sql查询语句的实例
2019/03/22 PHP
php使用redis的几种常见操作方式和用法示例
2020/02/20 PHP
Javascript 汉字字节判断
2009/08/01 Javascript
Chrome中JSON.parse的特殊实现
2011/01/12 Javascript
JQuery之拖拽插件实现代码
2011/04/14 Javascript
封装html的select标签的js操作实例
2013/07/02 Javascript
jquery 通过name快速取值示例
2014/01/24 Javascript
jQuery中关于ScrollableGridPlugin.js(固定表头)插件的使用逐步解析
2014/07/17 Javascript
jquery实现的代替传统checkbox样式插件
2015/06/19 Javascript
js数组的五种迭代方法及两种归并方法(推荐)
2016/06/14 Javascript
javascript验证香港身份证的格式或真实性
2017/02/07 Javascript
原生js轮播特效
2017/05/18 Javascript
JS动态添加的div点击跳转到另一页面实现代码
2017/09/30 Javascript
不使用 JS 匿名函数理由
2017/11/17 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
2018/07/03 Javascript
JavaScript事件发布/订阅模式原理与用法分析
2018/08/21 Javascript
layui 图片上传+表单提交+ Spring MVC的实例
2019/09/21 Javascript
利用Vue实现简易播放器的完整代码
2020/12/30 Vue.js
在Django同1个页面中的多表单处理详解
2017/01/25 Python
详解Python里使用正则表达式的ASCII模式
2017/11/02 Python
django中的HTML控件及参数传递方法
2018/03/20 Python
Python 查找list中的某个元素的所有的下标方法
2018/06/27 Python
pytorch中的自定义反向传播,求导实例
2020/01/06 Python
Python类及获取对象属性方法解析
2020/06/15 Python
CSS3 实现的火焰动画
2020/12/07 HTML / CSS
韩国知名的家庭购物网站:CJmall
2016/08/01 全球购物
英国美发和美容产品商城:HQhair
2019/02/08 全球购物
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
2013/03/30 面试题
本科生自荐信
2014/06/18 职场文书
领导干部“四风”问题批评与自我批评材料
2014/09/24 职场文书
微观世界观后感
2015/06/10 职场文书
《暗黑破坏神2:重制版》本周进行第一轮A测 目前可官网进行申请报名
2021/04/07 其他游戏
SpringBoot实现quartz定时任务可视化管理功能
2021/08/30 Java/Android
Python内置包对JSON文件数据进行编码和解码
2022/04/12 Python