假设您有一个页面多次(12)调用此innerHTML函数:
<?php
function innerHTML($node){
$doc = new DOMDocument();
foreach ($node->childNodes as $child)
$doc->appendChild($doc->importNode($child, true));
return $doc->saveHTML();
}
这将导致生成 12 个 DOMDocuments。保存对 1 个 DOMDocument 的引用并在每次使用时不断清理它是否值得?如果是这样,最有效的清洁方法是什么?
最佳答案
我认为不存在任何性能问题; DOMDocument
在创建时不会解析任何 XML。我认为整个过程中处理最密集的操作是 saveHTML()
,因此您不会使用相同的 DOMDocument
来保存任何内容。
销毁对象并创建一个新对象可能比保留全局变量并在每次使用时清空它更有效。
关于php - 重用 DOMDocument 或创建新文档对性能的影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4739017/