private static function removeCharacterDataNodes(\DOMNode $node) { $node->normalize(); if ($node->hasChildNodes()) { for ($i = $node->childNodes->length - 1; $i >= 0; $i--) { $child = $node->childNodes->item($i); if ($child instanceof \DOMCharacterData) { if (!strlen(trim($child->data))) { $node->removeChild($child); } } } } }