Open In App

PHP | DOMNode cloneNode() function

Last Updated : 25 Feb, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

The DOMNode::cloneNode() function is an inbuilt function in PHP which is used to create a copy of the node.

Syntax:

DOMNode DOMNode::cloneNode( bool $deep )

Parameters:This function accepts a single parameter $deep which indicates whether to copy all descendant nodes. This parameter is set to FALSE by default.

Return Value: This function returns the cloned node.

Program 1:




<?php
// Create a DOMDocument
$doc = new DOMDocument();
  
// Load XML
$doc->loadXML('<html></html>');
  
// Create an heading element on DOMDocument object
$h1 = $doc->createElement('h1', "geeksforgeeks");
  
// Append the child
$doc->documentElement->appendChild($h1);
  
// Create a new DOMDocument
$doc_new = new DOMDocument();
  
// Deep clone the node to new instance
$doc_new = $doc->cloneNode(true);
  
// Render the cloned instance
echo $doc_new->saveXML();
?>


Output:

Program 2:




<?php
// Create a DOMDocument
$doc = new DOMDocument('1.0', 'iso-8859-1');
  
// Load XML
$doc->loadXML('<html></html>');
  
// Create an heading element on DOMDocument object
$h1 = $doc->createElement('h1', "geeksforgeeks");
  
// Append the child
$doc->documentElement->appendChild($h1);
  
// Shallow clone the node to a new instance
// It will clone only the instance not its
// children nodes
$doc_new = $doc->cloneNode(false);
  
// Render the cloned instance
echo $doc_new->saveXML();
?>


Output: Press Ctrl + U to see the DOM

Reference: https://www.php.net/manual/en/domnode.clonenode.php



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads