微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用图像时PHP内存泄漏

我正忙着尝试使用 PHP处理图像.
图像很好……很大.它是一个高清晰度图像(36MP分辨率),总大小为23Mo.

在这张照片上做了一些事情,比如调整它或将其转换为灰度.

问题是,当我在终端上查看使用htop的内存使用情况时,我可以看到apache正在使用内存(略大于140Mb),但在图像处理结束时却没有释放它.

我逐个删除了每个图像处理函数,现在只有那3个简单的行,但是泄漏仍然存在:

$image = imagecreatefromstring( file_get_contents($imageFullPath) );
imagedestroy($image);
unset($image);

有人知道为什么吗?

谢谢 !

吉姆

解决方法

这是PHP中常见的内存问题. unset($image)不会从内存中删除图像,只会删除数据链接.尝试像这样的空图像.

$image = NULL;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐