The DOMElement::setAttributeNode() function is an inbuilt function in PHP which is used to add a new attribute node to element.
Syntax:
DOMAttr DOMElement::setAttributeNode( DOMAttr $attr )
Parameters: This function accepts a single parameter $attr which holds the attribute node to be added.
Return Value: This function returns an DOMAttr value containing old node if the value has been replaced or NULL.
Exceptions: This function throws DOM_NO_MODIFICATION_ALLOWED_ERR, if the node is readonly.
Below given programs illustrate the DOMElement::setAttributeNode() function in PHP:
Program 1:
<?php   // Create a new DOMDocument $dom = new DOMDocument();    // Create an element $node = $dom->createElement("p", 'neveropen');    // Add the node to the dom $newnode = $dom->appendChild($node);    // Create a DOMAttr instance which // increase the font-size $attr = new DOMAttr('style', 'font-size: 80px;');   // Set the attribute $newnode->setAttributeNode($attr);    // View the XML echo $dom->saveXML(); ?> |
Output:
<?xml version="1.0"?> <p style="font-size: 80px;">neveropen</p>
Program 2:
<?php   // Create a new DOMDocument $dom = new DOMDocument();   // Load the XML $dom->loadXML("<?xml version=\"1.0\"?> <root>     <html>         <h1 id=\"my_id\"> Geeksforneveropen </h1>         <h2> Second heading </h2>     </html> </root>");   // Get the elements $node = $dom->getElementsByTagName('h1')[0];    echo "Before the addition of attributes: <br>";   // Get the attribute count $attributeCount = $node->attributes->count(); echo 'No of attributes => ' . $attributeCount;    // Create a DOMAttr instance $attr = new DOMAttr('class', 'value');   // Add the new attribute $node->setAttributeNode($attr);    echo "<br>After the addition of attributes: <br>";    // Get the attribute count $attributeCount = $node->attributes->count(); echo 'No of attributes => ' . $attributeCount; ?> |
Output:
Before the addition of attributes: No of attributes => 1 After the addition of attributes: No of attributes => 2
Reference: https://www.php.net/manual/en/domelement.setattributenode.php


… [Trackback]
[…] There you will find 19307 additional Information on that Topic: geeksforgeeks.org/php-domelement-setattributenode-function-2/ […]
… [Trackback]
[…] Read More here on that Topic: geeksforgeeks.org/php-domelement-setattributenode-function-2/ […]