La función DOMElement::setIdAttributeNS() es una función incorporada en PHP que se usa para declarar que el atributo especificado por el nombre local dado y el URI del espacio de nombres es de tipo ID.
Sintaxis:
void DOMElement::setIdAttributeNS( string $namespaceURI, string $localName, bool $isId )
Parámetros: esta función acepta tres parámetros, como se mencionó anteriormente y se describe a continuación:
- $namespaceURI: Especifica la URI del espacio de nombres.
- $localName: Especifica el nombre local.
- $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::setIdAttributeNS() en PHP:
Ejemplo 1:
<?php // Create a new DOMDocument $dom = new DOMDocument(); // Enable validate on parse $dom->validateOnParse = true; // Create an element $element = $dom->createElementNS("my_namespace", "x:p", 'Hello, this is my paragraph.'); // Add the node to the dom $newnode = $dom->appendChild($element); // Set the attribute $newnode->setAttributeNS("my_namespace", "id", "my_value"); // Set that attribute as id $element->setIDAttributeNS("my_namespace", 'id', true); echo $dom->saveXML(); ?>
Salida: puede presionar Ctrl+U para ver el DOM.
Ejemplo 2:
<?php // Create a new DOMDocument $dom = new DOMDocument(); // Enable validate on parse $dom->validateOnParse = true; // Create an element $element = $dom->createElementNS("my_namespace", "x:p", 'GeeksforGeeks'); // Add the node to the dom $newnode = $dom->appendChild($element); // Set the attribute $newnode->setAttributeNS("my_namespace", "id", "geeksforgeeks"); // Set that attribute as id $element->setIDAttributeNS("my_namespace", '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:
GeeksforGeeks
Referencia: https://www.php.net/manual/en/domelement.setidattributens.php