La función DOMElement::setIdAttributeNode() es una función incorporada en PHP que se usa para declarar que el atributo especificado por la instancia de DOMAttr es de tipo ID.
Sintaxis:
void DOMElement::setIdAttributeNode( DOMAttr $attr, bool $isId )
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- $attr: Especifica el atributo como una instancia de DOMATTR.
- $isId: Especifica si desea que el nombre sea de tipo ID.
Valor devuelto: esta función no devuelve nada.
Excepciones: esta función arroja DOM_NO_MODIFICATION_ALLOWED_ERR, si el Node es de solo lectura o DOM_NOT_FOUND, si el nombre no es un atributo de este elemento.
Los siguientes ejemplos ilustran la función DOMElement::setIdAttributeNode() en PHP:
Ejemplo 1:
<?php // Create a new DOM Document $dom = new DOMDocument('1.0', 'iso-8859-1'); // Enable validate on parse $dom->validateOnParse = true; // Create a div element $element = $dom->appendChild(new DOMElement ('div', 'GEEKSFORGEEKS')); // Create the id element $id = new DOMAttr('id', 'geeksforgeeks'); // Create a id attribute to div $attr = $element->setAttributeNode($id); // Set that attribute as id $element->setIDAttributeNode($id, true); echo $dom->saveXML(); ?>
Producción:
Ejemplo 2:
<?php // Create a new DOM Document $dom = new DOMDocument('1.0', 'iso-8859-1'); // Enable validate on parse $dom->validateOnParse = true; // Create a div element $element = $dom->appendChild(new DOMElement ('div', 'Hey ! This is my content.')); // Create the id element $id = new DOMAttr('id', 'geeksforgeeks'); // Create a id attribute to div $attr = $element->setAttributeNode($id); // Set that attribute as id $element->setIDAttributeNode($id, true); // Get the text of element with id='geeksforgeeks' // just to see if it works $value = $dom->getElementById('geeksforgeeks')->textContent; echo $value; ?>
Producción:
Hey ! This is my content.
Referencia: https://www.php.net/manual/en/domelement.setidattributenode.php