Удаляем пустые Xml узлы

Попробуем осуществить это.

$dom  = new DOMDocument();
$root = $dom->createElement('html');
$firstFragment = $dom->createDocumentFragment();
$firstFragment->appendXML('<p>44</p><p/><p>55</p>');
$root->appendChild($firstFragment);
$dom->appendChild($root);
echo $dom->saveHTML();

Как результат получаем код.

<html>
<p>44</p>
<p></p>
<p>55</p>
</html>

Теперь вставим еще кусок кода.

foreach($root->childNodes as $chN){
    if(!$chN->hasAttributes() && !$chN->hasChildNodes()){
	$chN->parentNode->removeChild($chN);
    }
}
$dom->appendChild($root);

И получим вывод.

<html>
<p>44</p>
<p>55</p>
</html>

One Response to “Удаляем пустые Xml узлы”

  1. Snowcore Says:

    Отличная подборка материалов по работе с XML!
    Я как раз сейчас готовлюсь к Zend PHP 5 Certification - прохожу тему DOM :)

Leave a Reply