PHP | Función DOMNode C14NFile()

La función DOMNode::C14NFile() es una función incorporada en PHP que se usa para canonicalizar los Nodes en un archivo.

Sintaxis:

int DOMNode::C14NFile( string $uri, bool $exclusive, 
bool $with_comments, array $xpath, array $ns_prefixes )

Parámetros: esta función acepta cinco parámetros, como se mencionó anteriormente y se describe a continuación:

  • $uri (Opcional): Especifica la ruta para escribir la salida.
  • $exclusive (opcional): especifica si habilitar el análisis exclusivo solo de los Nodes que coincidan con los prefijos de espacio de nombres o xpath proporcionados.
  • $with_comments (Opcional): Especifica si conservar los comentarios en la salida.
  • $xpath (opcional): especifica una array de xpaths para filtrar los Nodes.
  • $ns_prefixes (opcional): especifica una array de prefijos de espacio de nombres para filtrar los Nodes.

Valor devuelto: esta función devuelve el número de bytes escritos o FALSO en caso de falla

Los siguientes ejemplos ilustran la función DOMNode::C14NFile() en PHP:

Ejemplo 1: en este ejemplo, guardaremos el contenido del DOM en forma de string en un archivo sin comentarios

<?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');
?>

Salida: Esto creará un archivo new.txt con el siguiente contenido de texto

<html><h1></h1></html>

Ejemplo 2: En este ejemplo, guardaremos el contenido DOM en forma de string en un archivo con comentarios.

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

Salida: Esto creará un archivo new.txt con el siguiente contenido de texto

<html><!-- This is a comment --><h1></h1></html>

Referencia: https://www.php.net/manual/en/domnode.c14nfile.php

Publicación traducida automáticamente

Artículo escrito por gurrrung y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *