1

3,424KB のファイルをアップロードしようとすると、このエラーが発生し、このエラーが発生しました

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 12864 bytes)

しかし、4,891KB のファイルをアップロードしようとすると問題ありません。これはなぜですか?

また、php5.ini ファイルを更新しました。アクセス許可は問題なく、すべてです。

どんなヒントでも素晴らしいでしょうありがとう!

J

これは、エラーが発生するコード行です。

 $image = imagecreatefromjpeg($source); 
4

2 に答える 2

5

.jpggd ライブラリは、メモリ内のファイルを完全に解凍します。したがって、アップロードされたファイルの大きさではなく、ピクセル単位のサイズのみが重要です。

少し増やす必要がありますmemory_limit

于 2012-04-24T17:24:11.253 に答える
0

チップ

A. 画像が圧縮されていないため、GD は失敗します。

B. ユーザーmemory_limitがメモリを増やす

C. Imagick を使用すると、メモリ効率が向上します

D. 画像のサイズを扱いやすいサイズに変更する

try 
{
    $img = new Imagick ( $imageLarge );
    $img->thumbnailImage ( 500, 500, TRUE );
    $img->writeImage ( $imageCute );
} 
catch ( Exception $e ) 
{
    echo 'Caught exception: ', $e->getMessage (), "\n";
}
于 2012-04-24T17:36:03.453 に答える