PHP的内存问题

时间:2017-08-23 14:27:17

标签: php garbage-collection out-of-memory

我的应用程序存在内存问题。

我的应用程序管理来自api(类似10 mb)的大xml,必须进行解析和转换。

有时候,多个实例同时程序会因内存泄漏而崩溃。

我知道unset不会释放内存,但它会被转移到垃圾收集中,但是如果需要它会最终释放吗?

<?php
function test() {
    $a = 100;
    $b = 200;
    $result = $a * $b;

    return $result;
}

function test2() {
    $a = 100;
    $b = 200;
    $result = $a * $b;
    unset($a);unset($b);
    return $result;
}

如果需要,这会产生任何好处吗?

1 个答案:

答案 0 :(得分:0)

我不建议使用SimpleXML。它将整个文档加载到内存中。

使用类似SAX的东西,例如XMLReader。

你提到的'未设置'是没用的。让GC完成工作。