在php上从大文件创建拇指

时间:2012-12-30 12:41:06

标签: php gd thumbnails fatal-error

我需要从上传的文件(jpg,gif,png)创建拇指。 我正在使用GD。

当尝试从上传的大文件(1262x16482)创建拇指时 - 我得到了致命的错误 致命错误:允许的内存大小为134217728字节耗尽(尝试分配60126336字节)
在线上 $ image = imagecreatefromjpeg($ file);

我试图在这个问题上找到答案,其中大部分是关于增加php.ini中的memory_limit。 由于某些原因,这个解决方案不适合我。

也许有一些php扩展允许不将所有文件读入内存,而只读取其中的一部分。

2 个答案:

答案 0 :(得分:0)

根据文件类型,可能强制在将所有内容加载到内存之前将其加载到内存中。

大多数图形文件格式不以线性格式存储信息。相反,一个部分中的数据可以指另一部分或vv中的某些结构。你最好的选择是在php.ini中提升你允许的内存,或者在上传时限制文件大小。

答案 1 :(得分:0)

我认为使用TimThumb对你来说会更容易,因为你可能会有一些错误的行为 http://code.google.com/p/timthumb/

你需要下载它并调用图像扔掉它。