使用后清除数组对性能有用吗?

时间:2017-10-09 05:11:49

标签: php arrays memory memory-management

在数组达到目的后清除数组是否有用?

$mediaUgly = simplexml_load_file('media.xml');
$mediaNice = json_decode(json_encode($mediaUgly),true);

XML文件大约有50kb。我不知道 $ mediaUgly 会在内存中有多大,但是只要我有 $ mediaNice,,我就不再需要它了。稍后我将从 $ mediaNice 中派生出更多数组。

我没有遇到任何速度问题,但我想知道是否尽快释放内存是一种美德,例如通过分配一些非常小的内容:

$mediaUgly = 0;

1 个答案:

答案 0 :(得分:1)

一旦内存中存在某些内容,清除它就无法获得真正的性能提升。如果您已完成数据,清除它是一种很好的做法,只是为了为其他对象腾出空间。如果你不断累积大量你将永远不会在你脚本的其余部分再次使用的数据,它会增加脚本本身的内存使用量,这在多个子工作者的倍增时会很重要在网络服务中。

另外,为什么要将XML结构转换为带有json_encode / json_decode的数组?一般来说,通过SimpleXML对象比使用数组更好地处理数据,并且执行json事务-IS-性能损失。

熟悉SimpleXML命令,你会很高兴你做到了!