<?php dl('xmlwriter.so'); $xw = xmlwriter_open_memory(); xmlwriter_set_indent($xw, 1); $res = xmlwriter_set_indent_string($xw, ' '); xmlwriter_start_document($xw, '1.0', 'UTF-8'); // A first element xmlwriter_start_element_ns($xw, 'prefix', 'books', 'uri'); xmlwriter_start_attribute($xw, 'isbn'); /* Uncomment this line if you have libxml 2.6.17 or CVS version after 2005/02/22 earlier versions segfault */ /* xmlwriter_start_attribute_ns($xw, 'prefix', 'isbn', 'uri'); xmlwriter_end_attribute($xw); */ xmlwriter_end_attribute($xw); xmlwriter_text($xw, 'book1'); xmlwriter_end_element($xw); xmlwriter_end_document($xw); $out = xmlwriter_output_memory($xw, 0); echo $out;
<?php $xw = xmlwriter_open_memory(); xmlwriter_set_indent($xw, true); xmlwriter_start_document($xw); xmlwriter_start_element_ns($xw, 'test', 'test', 'urn:x-test:'); xmlwriter_write_element_ns($xw, 'test', 'foo', null, ''); xmlwriter_write_element_ns($xw, null, 'bar', 'urn:x-test:', ''); xmlwriter_write_element_ns($xw, null, 'bar', '', ''); xmlwriter_end_element($xw); xmlwriter_end_document($xw); print xmlwriter_flush($xw, true); print "\n"; $xw = new XMLWriter(); $xw->openMemory(); $xw->setIndent(true); $xw->startDocument(); $xw->startElementNS('test', 'test', 'urn:x-test:'); $xw->writeElementNS('test', 'foo', null, ''); $xw->writeElementNS(null, 'bar', 'urn:x-test:', ''); $xw->writeElementNS(null, 'bar', '', ''); $xw->endElement(); $xw->endDocument(); print $xw->flush(true);
<?php /* $Id$ */ $xw = xmlwriter_open_memory(); xmlwriter_set_indent($xw, TRUE); xmlwriter_set_indent_string($xw, ' '); xmlwriter_start_document($xw, '1.0', "UTF-8"); xmlwriter_start_element($xw, 'root'); xmlwriter_start_element_ns($xw, 'ns1', 'child1', 'urn:ns1'); xmlwriter_write_attribute_ns($xw, 'ns1', 'att1', 'urn:ns1', '<>"\'&'); xmlwriter_write_element($xw, 'chars', "special characters: <>\"'&"); xmlwriter_end_element($xw); xmlwriter_end_document($xw); // Force to write and empty the buffer $output = xmlwriter_flush($xw, true); print $output;
<?php $w = xmlwriter_open_memory("writer.xml"); xmlwriter_set_indent($w, true); // verbose version xmlwriter_start_element_ns($w, "dc", "subject", "http://purl.org/dc/elements/1.1/"); xmlwriter_text($w, "Verbose"); xmlwriter_end_element($w); // simpler version xmlwriter_write_element_ns($w, "dc", "subject", "http://purl.org/dc/elements/1.1/", "Simple"); echo '<pre>' . htmlentities(xmlwriter_output_memory($w)) . '</pre>';
function VERIFY($x) { VS($x, true); } $xml = xmlwriter_open_memory(); var_dump($xml); VERIFY(xmlwriter_set_indent($xml, true)); VERIFY(xmlwriter_set_indent_string($xml, " ")); VERIFY(xmlwriter_start_document($xml, "1.0", "utf-8")); VERIFY(xmlwriter_start_element($xml, "node")); VERIFY(xmlwriter_write_attribute($xml, "name", "value")); VERIFY(xmlwriter_start_attribute($xml, "name2")); VERIFY(xmlwriter_end_attribute($xml)); VERIFY(xmlwriter_write_element($xml, "subnode", "some text")); VERIFY(xmlwriter_end_element($xml)); VERIFY(xmlwriter_start_element_ns($xml, "fb", "node", "http://www.facebook.com/")); VERIFY(xmlwriter_write_attribute_ns($xml, "fb", "attr", "http://www.facebook.com/", "value")); VERIFY(xmlwriter_start_attribute_ns($xml, "fb", "attr2", "http://www.facebook.com/")); VERIFY(xmlwriter_end_attribute($xml)); VERIFY(xmlwriter_write_element_ns($xml, "prefix", "name", "http://some.url/", 1337)); VERIFY(xmlwriter_start_element($xml, "node")); VERIFY(xmlwriter_full_end_element($xml)); VERIFY(xmlwriter_end_element($xml)); VERIFY(xmlwriter_start_element($xml, "node")); VERIFY(xmlwriter_start_cdata($xml)); VERIFY(xmlwriter_text($xml, "Raw text")); VERIFY(xmlwriter_end_cdata($xml)); VERIFY(xmlwriter_end_element($xml)); VERIFY(xmlwriter_start_element($xml, "node")); VERIFY(xmlwriter_write_cdata($xml, "More CDATA")); VERIFY(xmlwriter_end_element($xml));