加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

使用图像时PHP内存泄漏

发布时间:2020-12-13 22:25:07 所属栏目:PHP教程 来源:网络整理
导读:我正忙着尝试使用 PHP处理图像. 图像很好……很大.它是一个高清晰度图像(36MP分辨率),总大小为23Mo. 我在这张照片上做了一些事情,比如调整它或将其转换为灰度. 问题是,当我在终端上查看使用htop的内存使用情况时,我可以看到apache正在使用内存(略大于140Mb),
我正忙着尝试使用 PHP处理图像.
图像很好……很大.它是一个高清晰度图像(36MP分辨率),总大小为23Mo.

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

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

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

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

有人知道为什么吗?

谢谢 !

吉姆

解决方法

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

$image = NULL;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读