PHP - Función xmlwriter_set_indent ()

Definición y uso

XML es un lenguaje de marcado para compartir los datos a través de la web, XML es legible tanto para humanos como para máquinas. La extensión XMLWriter tiene internamente la API libxml xmlWriter y se usa para escribir / crear el contenido de un documento XML. Los documentos XML generados por esto no se almacenan en caché y solo se reenvían.

los xmlwriter_set_indent() La función acepta un objeto de la clase XMLWriter y un valor booleano como parámetros y activa o desactiva la sangría del documento XML de salida, según el valor booleano pasado.

Sintaxis

xmlwriter_set_indent($writer, $indentation);

Parámetros

No Señor Descripción de parámetros
1

writer(Mandatory)

Este es un objeto de la clase XMLWriter que representa el documento XML que desea modificar / crear.

2

indentation(Mandatory)

Este es un valor booleano que especifica si debe tener sangría en el documento de salida o no.

Valores devueltos

Esta función devuelve un valor booleano que es VERDADERO en caso de éxito y FALSO en caso de falla.

Versión PHP

Esta función se introdujo por primera vez en PHP Versión 5 y funciona en todas las versiones posteriores.

Ejemplo

El siguiente ejemplo demuestra el uso de xmlwriter_set_indent() función -

<?php
   //Creating an XMLWriter
   $writer = new XMLWriter();

   //Opening a writer
   $uri = "result.xml";
   $writer = xmlwriter_open_uri($uri);

   //Starting the document
   xmlwriter_start_document($writer);

   //Starting an element
   xmlwriter_start_element($writer, 'Tutorial');

   //Setting indentation
   xmlwriter_set_indent($writer,TRUE);
   xmlwriter_set_indent_string($writer, "    ");
   
   //Creating XML elements
   xmlwriter_write_element($writer, 'name', 'JavaFX');  
   xmlwriter_write_element($writer, 'author', 'Krishna');  
   xmlwriter_write_element($writer, 'pages', '535');  

   //Ending the element
   xmlwriter_end_element($writer);

   //Ending the document
   xmlwriter_end_document($writer);
   print("XML Document Created");
?>

Esto generará el siguiente documento XML:

<?xml version="1.0"?>
<Tutorial>
   <Name>JavaFX</Name>
   <Author>Krishna</Author>
   <Pages>535</Pages>
</Tutorial>

Ejemplo

A continuación se muestra el ejemplo de esta función en estilo orientado a objetos:

<?php
   //Creating an XMLWriter
   $writer = new XMLWriter();
   $uri = "result.xml";

   //Opening a writer
   $writer->openUri($uri);

   //Starting the document
   $writer->startDocument();

   //Starting an element
   $writer->startElement('Tutorial');

   //Setting indentation
   $writer->setIndent(TRUE);
   $writer->setIndentString("    ");
   
   //Creating XML elements
   $writer->writeElement('Name', 'JavaFX');  
   $writer->writeElement('Author', 'Krishna'); 
   $writer->writeElement('Pages', '535');  

   //Ending the element
   $writer->endElement();

   //Ending the document
   $writer->endDocument();
?>

Esto generará el siguiente documento XML:

<?xml version="1.0"?>
<Tutorial>
   <Name>JavaFX</Name>
   <Author>Krishna</Author>
   <Pages>535</Pages>
</Tutorial>