Saturday, November 22, 2025
HomeLanguagesPHP | DOMElement setAttributeNodeNS() Function

PHP | DOMElement setAttributeNodeNS() Function

The DOMElement::setAttributeNodeNS() function is an inbuilt function in PHP which is used to add a new attribute node to element. This is just an alternative for setAttributeNode() function. 

Syntax:

DOMAttr DOMElement::setAttributeNodeNS( DOMAttr $attr )

Parameters: This function accepts a single parameter $attr which holds the attribute to be added. 

Return Value: This function returns the old node if the attribute has been replaced. 

Exceptions: This function throws DOM_NO_MODIFICATION_ALLOWED_ERR, if the node is readonly. 

Below examples illustrate the DOMElement::setAttributeNodeNS() function in PHP: 

Example 1: 

php




<?php
 
// Create a new DOMDocument
$dom = new DOMDocument();
 
// Create a element with a namespace
$root = $dom->createElementNS("my_namepsace", "root");
  
// Create an element
$node = $dom->createElement("div", "neveropen");
  
// Append the child
$dom->appendChild($root);
 
// Add the node to the dom
$newnode = $dom->appendChild($node);
 
// Create a DOMAttr instance
$attr = new DOMAttr('style', 'color: green; font-size: 100px;');
 
// Set the attribute
$newnode->setAttributeNodeNS($attr);
  
echo $dom->saveXML();
?>


Output: Example 2: 

php




<?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->setAttributeNodeNS($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.setattributenodens.php

RELATED ARTICLES

Most Popular

Dominic
32407 POSTS0 COMMENTS
Milvus
97 POSTS0 COMMENTS
Nango Kala
6784 POSTS0 COMMENTS
Nicole Veronica
11931 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11999 POSTS0 COMMENTS
Shaida Kate Naidoo
6907 POSTS0 COMMENTS
Ted Musemwa
7168 POSTS0 COMMENTS
Thapelo Manthata
6863 POSTS0 COMMENTS
Umr Jansen
6848 POSTS0 COMMENTS