PHP | DOMNode C14NFile() Function

The DOMNode::C14NFile() function is an inbuilt function in PHP which is used to canonicalize nodes to a file.
Syntax:
int DOMNode::C14NFile( string $uri, bool $exclusive, bool $with_comments, array $xpath, array $ns_prefixes )
Parameters: This function accepts five parameters as mentioned above and described below:
- $uri (Optional): It specifies the path to write the output to.
- $exclusive (Optional): It specifies whether to enable exclusive parsing of only the nodes matched by the provided xpath or namespace prefixes.
- $with_comments (Optional): It specifies whether to retain comments in output.
- $xpath (Optional): It specifies an array of xpaths to filter the nodes by.
- $ns_prefixes (Optional): It specifies an array of namespace prefixes to filter the nodes by.
Return Value: This function returns the number of bytes written or FALSE on failure
Below examples illustrate the DOMNode::C14NFile() function in PHP:
Example 1: In this example, we will save the DOM content in the form of string to a file without comments
<?php // Create a DOMDocument $doc = new DOMDocument(); // Load XML $doc->loadXML('<html></html>'); // Create an heading element on DOMDocument object $h1 = $doc->createElement('h1'); // Append the child $doc->documentElement->appendChild($h1); // Save the data without comments $stringdata = $doc->C14NFile('new.txt'); ?> |
Output:This will create a new.txt file with the following text content
<html><h1></h1></html>
Example 2: In this example, we will save the DOM content in the form of string to a file with comments.
<?php // Create a DOMDocument $doc = new DOMDocument(); // Load XML $doc->loadXML('<html><!-- This is a comment --></html>'); // Create an heading element on DOMDocument object $h1 = $doc->createElement('h1'); // Append the child $doc->documentElement->appendChild($h1); // Save the data with comments $stringdata = $doc->C14NFile('new.txt', false, true); ?> |
Output: This will create a new.txt file with the following text content
<html><!-- This is a comment --><h1></h1></html>
Reference: https://www.php.net/manual/en/domnode.c14nfile.php



