php动态生成缩略图并输出显示的方法

这篇文章主要介绍了php动态生成缩略图并输出显示的方法,涉及php操作图片的相关技巧,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了php动态生成缩略图并输出显示的方法,分享给大家供大家参考,具体如下:

调用方法:

<img src="thumbs.php?filename=photo.jpg&width=100&height=100">

此代码可以为大图片动态生成缩略图显示,图片在内存中生成,不在硬盘生成真实文件

thumbs.php文件如下:

  1. <?php
  2. $filename= $_GET['filename'];
  3. $width = $_GET['width'];
  4. $height = $_GET['height'];
  5. $path="http://localhost/images/"; //finish in "/"
  6. // Content type
  7. header('Content-type: image/jpeg');
  8. // Get new dimensions
  9. list($width_orig, $height_orig) = getimagesize($path.$filename);
  10. if ($width && ($width_orig < $height_orig)) {
  11. $width = ($height / $height_orig) * $width_orig;
  12. } else {
  13. $height = ($width / $width_orig) * $height_orig;
  14. }
  15. // Resample
  16. $image_p = imagecreatetruecolor($width, $height);
  17. $image = imagecreatefromjpeg($path.$filename);
  18. imagecopyresampled($image_p,$image,0,0,0,0,$width,$height,$width_orig,$height_orig);
  19. // Output
  20. imagejpeg($image_p, null, 100);
  21. // Imagedestroy
  22. imagedestroy ($image_p);
  23. ?>