ノードが空の場合に一連のノードを削除する方法を見つけようとしています。私はこれを試しましたが、運がありません:
$xml = new DOMDocument();
$xml->preserveWhiteSpace = false;
$xml->formatOutput = true;
$xml->loadXML('<library>
<invites>
<invite>
<username>0</username>
<userid>0</userid>
</invite>
</invites>
<invites/>
<invites/>
<invites/>
<invites/>
<invites/>
<invites/>
</library>');
echo "<xmp>OLD \n". $xml->saveXML() ."</xmp>";
$opNodes = $xml->getElementsByTagName('invites');
foreach($opNodes as $node) {
$innerHtml = trim($node->nodeValue);
if(empty($innerHtml)){
$node->parentNode->removeChild($node);
}
}
echo "<xmp>NEW \n". $xml->saveXML() ."</xmp>";
これは、Why?...の一部を削除するだけです。事前に助けて感謝してください:-)