1

私は現在、php gd実装を使用して、常にメモリ不足になる画像のサイズを変更しています-かなり迅速です。問題は、imagecreatefromstring などの php 関数だと思います。

この関数を使用せずに画像のサイズを変更する簡単な実装があるので、php.ini のメモリ制限を増やす必要はありませんか?

4

2 に答える 2

5

ここにあなたのためのPHP関数があります

 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);
}

ソース: davidwalsh.name/create-image-thumbnail-php

于 2013-02-26T12:34:19.150 に答える
1

GDはそれほど多くのメモリを使用しないため、コードに他の問題があります。

imagedestroy複数の画像のサイズを変更し、新しく作成された画像を呼び出さない場合、メモリリークが発生します。

于 2013-02-26T12:13:29.480 に答える