有时似乎返回的DOMNodeList不是活动的。
使用像childNodes这样的访问时它是实时的
$children=$doc->getElementsByTagName('body')->item(0)->childNodes;
echo $children->length; //7
$children->item(0)->parentNode->removeChild($children->item(0));
echo $children->length; //6! list is live!
但有时候这个名单还没有上线......
$xpath=new DOMXPath($doc);
$nodes=$xpath->query("//p");
echo $nodes->length; // 7
$nodes->item(0)->parentNode->removeChild($nodes->item(0));
echo $nodes->length; // still 7? Not live.
XPath似乎是罪魁祸首。但是为什么返回一个DOMNodeList,如果它不活?为什么不在这一点上只是一个数组呢?