- var_dump: documentation ( source)
<?php
$doc = "<g>
<svg>
<g><path/></g>
<g><circle/></g>
</svg>
<svg>
<g><circle/></g>
</svg>
<svg>
<g><circle2/></g>
</svg>
</g>";
$dom = new DOMDocument();
$dom->loadXML($doc);
$x = new DOMXPath($dom);
$toDelete = $x->query("//svg[not(.//path)]");
foreach ($toDelete as $child) {
var_dump($child);
$child->parentNode->removeChild($child);
}
var_dump($dom->saveXML());