$html = new DOMDocument();
$html->loadHTMLFile($filename);
$meta = $html->getElementsByTagName(\"meta\");
foreach($meta as $old
When you use foreach
to iterate over the DOMNodeList
and remove an element, you are changing the DOMNodeList
content, so nodes will be skipped. You have to iterate backwards:
$nodes = $dom->getElementsByTagName('meta');
for ($i = $nodes->length - 1; $i >= 0; $i--) {
$nodes->item($i)->parentNode->removeChild($nodes->item($i));
}