php大图生成缩略图实现代码

  1. <?php
  2. /**
  3. * 生成缩略图
  4. *
  5. * @param string $imagepath 图片路径
  6. * @param string $thumb 生成缩略图名称
  7. * @param integer $width 生成缩略图最大宽度
  8. * @param integer $height 生成缩略图最大高度
  9. *
  10. */
  11. function resizeimage($imagepath, $thumb, $width = 200, $height = 200)
  12. {
  13. list($imagewidth, $imageheight) = getimagesize($imagepath);
  14. $imagepath = imagecreatefromjpeg($imagepath);
  15. if ($width && ($imagewidth < $imageheight))
  16. {
  17. $width = ($height / $imageheight) * $imagewidth;
  18. }
  19. else
  20. {
  21. $height = ($width / $imagewidth) * $imageheight;
  22. }
  23. $image = imagecreatetruecolor($width, $height);
  24. imagecopyresampled($image, $imagepath, 0, 0, 0, 0, $width, $height, $imagewidth, $imageheight);
  25. imagepng($image, $thumb);
  26. imagedestroy($image);
  27. }//开源代码phpfensi.com
  28. resizeimage('test.jpg', 'test_thumb.jpg');
  29. ?>