您的位置:首页 > 编程语言 > PHP开发

php-gd中imagecreatefromjpeg的内存使用

2013-07-11 11:52 627 查看
一个长宽各为2000的24位图片,至少需要 2000 x 2000 x (24/8) = 12M的内存

/***************** 这个计算大小的公式不知道是否准确 ****************************/

实际测试如下

$d = dirname(__FILE__);
echo ' a'.memory_get_usage().' ';//152K
$i = imagecreatefromjpeg($d.'/1.jpg');//0.5M 2500*3072
echo ' b'.memory_get_usage().' ';//39M
$i = imagecreatefromjpeg($d.'/2.jpg');//1.0M 3650*4486
echo ' c'.memory_get_usage().' ';//82M
ini_set('memory_limit','256M');
$i = imagecreatefromjpeg($d.'/3.jpg');//1.7M 5000*6144
echo ' d'.memory_get_usage().' ';//154M


a126056 b38619584 c82137648 d153881192

也就是说如果你允许php使用(x)大小的内存,则其和处理图片长(l)宽(h)之间的关系为l*h*5<x
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: