PHP内存不足,但为什么呢?

时间:2012-03-10 16:26:35

标签: php memory gd

我在函数的开头有以下代码行:

$src_img=imagecreatefromjpeg($name);

$name包含包含图像的非公开可访问文件夹的完整服务器路径,该文件是4.4MB JPG。

通常,当出现此问题时,PHP需要的内存比分配给打开压缩映像的内存要多,并且发出ini_set命令将成员提升到128MB可以解决问题。但是,在这种情况下,它没有。我已经尝试过提高到256,512和1024MB但仍然会出现错误:

  

致命错误:第83行/imgprocess.php中允许的内存大小为262144字节(尝试分配17152字节)。

我甚至尝试使用(违禁品!)-1来允许无限的记忆,只是为了看看是否有什么东西导致天高,但仍然没有。

我尝试了一个不同的图像文件,因为它是一个糟糕的JPG,仍然没有。

如何解决这个问题?

编辑:我应该补充一点,PHP不是安全模式

1 个答案:

答案 0 :(得分:2)

这可以解决您的问题:

ini_set('memory_limit', '256m');

请阅读faq.using.shorthandbytes

使用“MB”是一种错误的简写符号。 ini_get()不返回标准化值,通常返回它设置的值。