Dieses Beispiel zeigt, wie XMLWriter verwendet wird, um ein XML-Dokument im Speicher zu erstellen.
Beispiel #1 Erstellen eines einfachen XML-Dokuments
<?php
$xw = xmlwriter_open_memory();
xmlwriter_set_indent($xw, 1);
$res = xmlwriter_set_indent_string($xw, ' ');
xmlwriter_start_document($xw, '1.0', 'UTF-8');
// Ein erstes Element
xmlwriter_start_element($xw, 'tag1');
// Attribut 'att1' für Element 'tag1'
xmlwriter_start_attribute($xw, 'att1');
xmlwriter_text($xw, 'valueofatt1');
xmlwriter_end_attribute($xw);
xmlwriter_write_comment($xw, 'dies ist ein Kommentar.');
// Ein untergeordnetes Element erstellen
xmlwriter_start_element($xw, 'tag11');
xmlwriter_text($xw, 'Dies ist ein Beispieltext, ä');
xmlwriter_end_element($xw); // tag11
xmlwriter_end_element($xw); // tag1
// CDATA
xmlwriter_start_element($xw, 'testc');
xmlwriter_write_cdata($xw, "Dies ist der Inhalt von cdata");
xmlwriter_end_element($xw); // testc
xmlwriter_start_element($xw, 'testc');
xmlwriter_start_cdata($xw);
xmlwriter_text($xw, "test cdata2");
xmlwriter_end_cdata($xw);
xmlwriter_end_element($xw); // testc
// Eine Anweisung zur Verarbeitung
xmlwriter_start_pi($xw, 'php');
xmlwriter_text($xw, '$foo=2;echo $foo;');
xmlwriter_end_pi($xw);
xmlwriter_end_document($xw);
echo xmlwriter_output_memory($xw);
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
<?xml version="1.0" encoding="UTF-8"?> <tag1 att1="valueofatt1"> <!--dies ist ein Kommentar.--> <tag11>Dies ist ein Beispieltext, ä</tag11> </tag1> <testc><![CDATA[Dies ist der Inhalt von cdata]]></testc> <testc><![CDATA[test cdata2]]></testc> <?php $foo=2;echo $foo;?>