La función DOMNode::normalize() es una función incorporada en PHP que se usa para eliminar Nodes de texto vacíos y fusionar Nodes de texto adyacentes en este Node y todos sus elementos secundarios.
Sintaxis:
void DOMNode::normalize( void )
Parámetros: Esta función no acepta ningún parámetro.
Valor devuelto: esta función no devuelve ningún valor.
Los siguientes ejemplos ilustran la función DOMNode::normalize() en PHP:
Ejemplo 1: En este programa, mostraremos cómo la normalización elimina los Nodes de texto vacíos.
<?php // Create a new DOMDocument instance $document = new DOMDocument(); // Create a div element $element = $document-> appendChild(new DOMElement('div')); // Create a text Node $text1 = $document-> createTextNode('GeeksforGeeks'); // Create a empty text Node $text2 = $document->createTextNode(''); // Create another empty text Node $text3 = $document->createTextNode(''); // Append the nodes $element->appendChild($text1); $element->appendChild($text2); $element->appendChild($text3); echo "Number of text nodes before normalization: "; echo count($element->childNodes) . "<br>"; // Normalize the document $document->normalize(); echo "Number of text nodes after normalization: "; echo count($element->childNodes); ?>
Producción:
Number of text nodes before normalization: 3 Number of text nodes after normalization: 1
Ejemplo 2: En este programa, mostraremos cómo la normalización fusiona todos los Nodes de texto vecinos.
<?php // Create a new DOMDocument instance $document = new DOMDocument(); // Create a div element $element = $document-> appendChild(new DOMElement('div')); // Create a text Node $text1 = $document-> createTextNode('Hello'); // Create another text Node $text2 = $document-> createTextNode('World'); // Append the nodes $element->appendChild($text1); $element->appendChild($text2); echo "Number of text nodes " . "before normalization: "; echo count($element->childNodes) . "<br>"; // Normalize the document $document->normalize(); echo "Number of text nodes after " . "normalization: "; echo count($element->childNodes); ?>
Producción:
Number of text nodes before normalization: 2 Number of text nodes after normalization: 1
Referencia: https://www.php.net/manual/en/domnode.normalize.php