PHP - Función xmlwriter_start_dtd_entity ()

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_start_dtd_entity() La función acepta un objeto de la clase XMLWriter y un valor de cadena que representa el nombre de la entidad y un valor booleano como parámetros y crea una etiqueta de inicio de entidad DTD.

Sintaxis

xmlwriter_start_dtd_entity($writer, $name, $isParam);

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

name(Mandatory)

Este es un valor de cadena que representa el nombre calificado del tipo de documento.

3

isParam (Mandatory)

Este es un valor booleano que especifica si la entidad actual es un parámetro.

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_start_dtd_entity() función -

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

   //Starting the document
   xmlwriter_start_document($writer);

   //Setting the indentation
   xmlwriter_set_indent($writer, TRUE);
   xmlwriter_set_indent_string($writer, "    ");

   //Creating a DTD entity start tag
   xmlwriter_start_dtd_entity($writer, 'test_entity', TRUE);

   //Ending the DTD entity end tag
   xmlwriter_end_dtd_entity($writer);
   xmlwriter_start_element($writer, 'address');

   //Starting a element tag
   xmlwriter_start_element($writer, 'name');
   
   //Adding text to the element
   xmlwriter_text($writer, 'Tanmay Patil');  
   xmlwriter_end_element($writer);
   xmlwriter_start_element($writer, 'company');
   
   //Adding text to the element
   xmlwriter_text($writer, 'TutorialsPoint');  
   xmlwriter_end_element($writer);
   xmlwriter_start_element($writer, 'phone');
   
   //Adding text to the element
   xmlwriter_text($writer, '(011) 123-4567');  
   xmlwriter_end_element($writer);

   //Ending the element
   xmlwriter_end_element($writer);

   //Ending the document
   xmlwriter_end_document($writer);
?>

Esto generará el siguiente documento XML:

<?xml version="1.0"?>
<!ENTITY % test_entity>
<address>
   <name>Tanmay Patil</name>
   <company>TutorialsPoint</company>
   <phone>(011) 123-4567</phone>
</address>

Ejemplo

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

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

   //Opening a writer
   $uri = "result.xml";
   $writer->openUri($uri);

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

   //Setting the indentation on
   $writer->setIndent(TRUE);
   
   //Setting the indentation
   $writer->setIndentString("    ");

   //Creating a DTD entity start tag
   $writer->startDtdEntity('test_entity', TRUE);

   //Ending the DTD entity end tag
   $writer->endDtdEntity();

   //Starting an element
   $writer->startElement('Tutorial');
   $writer->startElement('name');
   
   //Adding text to the element
   $writer->text('JavaFX');  
   $writer->endElement();
   $writer->startElement('Author');
   
   //Adding text to the element
   $writer->text('Krishna');  
   $writer->endElement();

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

Esto generará el siguiente documento XML:

<?xml version="1.0"?>
<!ENTITY % test_entity>
<Tutorial>
   <name>JavaFX</name>
   <Author>Krishna</Author>
</Tutorial>