Skip to content
Related Articles

Related Articles

Improve Article

PHP | DOMElement setIdAttributeNode() Function

  • Last Updated : 26 Feb, 2020

The DOMElement::setIdAttributeNode() function is an inbuilt function in PHP which is used to declare the attribute specified by DOMAttr instance to be of type ID.

Syntax:

void DOMElement::setIdAttributeNode( DOMAttr $attr, bool $isId )

Parameters: This function accepts two parameters as mentioned above and described below:

  • $attr: It specifies the attribute as a DOMAttr instance.
  • $isId: It specifies whether if you want name to be of type ID.

Return Value: This function returns nothing.

Exceptions: This function throws DOM_NO_MODIFICATION_ALLOWED_ERR, if the node is readonly or DOM_NOT_FOUND, if name is not an attribute of this element.



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

Example 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();
?>

Output:

Example 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;
?>

Output:

Hey ! This is my content.

Reference: https://www.php.net/manual/en/domelement.setidattributenode.php




My Personal Notes arrow_drop_up
Recommended Articles
Page :