Home >Backend Development >PHP Tutorial >How to generate thumbnails in php

How to generate thumbnails in php

墨辰丷
墨辰丷Original
2018-06-08 11:54:024223browse

本篇文章主要介绍php生成缩略图的方法,感兴趣的朋友参考下,希望对大家有所帮助。

PHP上传图片、生成缩略图是比较常用到的功能,一般我们会把这些功能写一个类,方便我们调用。今天发现了一个比较简单些的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 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(&#39;.jpg&#39;, $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(&#39;image&#39;, &#39;thumb&#39;, $this->name.&#39;-thumb.jpg&#39;);
    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 == &#39;.&#39; || $file == &#39;..&#39;) continue;
  $path = &#39;.\\image\\&#39;.$file;
  $tmp = new thumb($path,0.3);
  $tmp->make();
}

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

php可逆加密的方法及原理

PHP处理会话的10个函数

PHP如何获得微信公众平台关注用户的基本信息

The above is the detailed content of How to generate thumbnails in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn