1

アップロードしたファイル (jpg、gif、png) からサムを作成する必要があります。私はそれにGDを使用しています。

そして、アップロードされた大きなファイル (1262x16482) からサムを作成しようとすると、致命的なエラー Fatal error: Allowed memory size of 134217728 bytes尽くされました (60126336 バイトを割り当てようとしました)

$image = imagecreatefromjpeg($file);が表示されます。

私はこの問題に関する答えを見つけようとしましたが、それらのほとんどは php.ini で memory_limit を増やすことに関するものです。いくつかの理由で、このソリューションは私には合いません。

おそらく、すべてのファイルをメモリに読み込むのではなく、その一部だけを読み込むことができる PHP 拡張機能がいくつかあります。

4

2 に答える 2

0

間違った行動をしている可能性があるので、TimThumb を使用する方が簡単だと思います http://code.google.com/p/timthumb/

それをダウンロードして画像を呼び出すだけで、それがスローされます。

于 2012-12-30T13:31:28.320 に答える
0

ファイルの種類によっては、作業を行う前にすべてをメモリにロードすることが必須になる場合があります。

ほとんどのグラフィック ファイル形式では、情報が線形形式で保存されません。むしろ、あるセクションのデータが別のセクションまたは vv の構造を参照している場合があります。最善の策は、php.ini で許可されているメモリを増やすか、アップロード時のファイル サイズを制限することです。

于 2012-12-30T12:55:53.050 に答える