Thinkphp自定义生成缩略图尺寸的方法

时间:2022-04-18 08:14:31

Thinkphp自定义生成缩略图尺寸的方法,本实例中生成两张不同尺寸的图片:第一张是大图350*350,第二张 50*50的缩略图

Thinkphp自定义生成缩略图尺寸的方法

Image类是Thinkphp系统自带的,可以研究下,这个缩略图类很强大

  1. function getLogo($logo, $width, $height, $name) { 
  2.    $fileArr = pathinfo($logo); 
  3.    $dirname = $fileArr['dirname']; 
  4.    $filename = $fileArr['filename']; 
  5.    $extension = $fileArr['extension']; 
  6.    $logo_rs = ""
  7.    if ($width > 0 && $height > 0) { 
  8.      $name_thumb = $dirname . "/" . $filename . "_" . $width . "_" . $height . "." . $extension;  
  9.      if (!file_exists($name_thumb)) { 
  10.        if (file_exists($logo)) { 
  11.          $image = new ThinkImage(); 
  12.          $image->open($logo); 
  13.          $image->thumb($width, $height)->save($name_thumb); 
  14.        } else { 
  15.          $name_thumb = ""
  16.        } 
  17.      } 
  18.      if ($name_thumb) { 
  19.        $logo_rs = $name_thumb; 
  20.      } 
  21.    } else { 
  22.      $logo_rs = $logo; 
  23.    } 
  24.    if ($logo_rs) { 
  25.      if ($name) { 
  26.        return "<img src='" . __APP__ . "/" . $logo_rs . "' alt='" . $name . "'/>"
  27.      } else { 
  28.        return __APP__ . "/" . $logo_rs; 
  29.      } 
  30.    } 
  31.  } 

模版自定义缩略图高度和宽度:生成350*350的缩略图,其它尺寸同理

  1. <img alt="350*350" src="{$logo|getLogo=###,350,350}" /> 

总结

以上所述是小编给大家介绍的Thinkphp自定义生成缩略图尺寸的方法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

原文链接:https://www.cnblogs.com/woleyia/archive/2019/08/05/11301662.html