这会导致PHP内存泄漏吗?

这会导致PHP内存泄漏吗?,php,Php,这会导致PHP内存泄漏吗 function xml_parse($xmlString) { return json_decode(json_encode(new SimpleXMLElement($xmlString)), true); } 或者我需要像这样取消SimpleXML对象的设置吗 function xml_parse($xmlString) { $sObj = new SimpleXMLElement($xmlString); $ret = json_de

这会导致PHP内存泄漏吗

function xml_parse($xmlString)
{
    return json_decode(json_encode(new SimpleXMLElement($xmlString)), true);
}
或者我需要像这样取消SimpleXML对象的设置吗

function xml_parse($xmlString)
{
    $sObj = new SimpleXMLElement($xmlString);
    $ret  = json_decode(json_encode($sObj), true);
    unset($sObj);
    return $ret;
}

我在一个大型的foreach中运行这个脚本,因为脚本需要解析很多文件。

我不是优步PHP专家,但为了安全起见,我可能会使用你那里的第二个示例。

我不是优步PHP专家,但为了安全起见,我可能会使用你那里的第二个示例。

它不会导致内存泄漏。PHP的垃圾收集器将看到没有对SimpleXMLElement的引用,并根据需要将其删除。

它不会导致内存泄漏。PHP的垃圾收集器将看到没有对SimpleXMLElement的引用,并根据需要将其删除。

如果您真的想知道,请运行它几千次并输出内存使用情况。通常,未使用的对象将由垃圾收集器清理,因此第一个代码段不会“泄漏”内存。然而,在PHP中,如果您真的想知道,请运行它几千次并输出内存使用情况。通常,未使用的对象将由垃圾收集器清理,因此第一个代码段不会“泄漏”内存。然而,在PHP中,我做了2次测试运行,第一个方法得到了大约400Mb,而第二个方法得到了大约270Mb。在PHP5.3.6(MAMP)上,我做了两次测试运行,第一种方法得到了大约400Mb,而第二种方法得到了大约270Mb。在PHP5.3.6(MAMP)上