Generating image thumbnails using php - without running out of memory

为君一笑 提交于 2019-12-29 08:21:40

问题


I am currently using a php gd implementation to resize images which constantly runs out of memory - rather quickly. I guess the problem are the php functions, like imagecreatefromstring etc.

Is there an easy implementation to resizing images which doesn't use this functions, so I won't have to increase my php.ini memory limit?


回答1:


GD don't use that much memory, so you have other problems in your code.

If you resize multiple images and don't call imagedestroy on a newly created image, you run in memory leaks.




回答2:


here is a PHP function for you

 function make_thumb($src, $dest, $desired_width,$desired_h) {

  /* read the source image */
  $source_image = imagecreatefromjpeg($src);
  $width = imagesx($source_image);
  $height = imagesy($source_image);

  $desired_height = $desired_h;

  /* create a new, "virtual" image */
  $virtual_image = imagecreatetruecolor($desired_width, $desired_height);

  /* copy source image at a resized size */
  imagecopyresampled($virtual_image, $source_image, 0, 0, 0, 0, $desired_width, $desired_height, $width, $height);

  /* create the physical thumbnail image to its destination */
  imagejpeg($virtual_image, $dest);
}

Source : davidwalsh.name/create-image-thumbnail-php



来源:https://stackoverflow.com/questions/15088666/generating-image-thumbnails-using-php-without-running-out-of-memory

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!