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

PHP发布包含文件的内存

我可以释放从包含文件生成的内存,这是我的代码

a.PHP只会

<?
echo memory_get_usage();
include_once "b.PHP";
echo memory_get_usage();
$n = new obj();
echo memory_get_usage();
?>

b.PHP

<?
class obj {
protected $_obj = array{
....
}

function ....

}

?>

我检查了一下,在我包含b.PHP之后,内存使用会增加,这比创建一个新对象更高.结果如下

348832
496824
497072

那么,我该如何释放包含文件的内存呢?

解决方法:

我认为PHP不能解包(我的意思是,释放包含文件所占用的内存空间),因为文件内容可能会在以后使用.这是PHP创建者的设计选择.

在您的PHP脚本完成之后,它将释放消耗的内存,不要太担心它,除非它真的太过开销并且您有大量的流量负载.

如果您想要立即释放包含文件中的(比如说巨大的)对象,请使用unset($obj).它会帮助一些人.您应该阅读有关PHP垃圾收集策略的更多信息以进行微调.

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

相关推荐