1--TEST-- 2XMLWriter: libxml2 XML Writer, Elements & Attributes 3--SKIPIF-- 4<?php 5if (!extension_loaded("xmlwriter")) die("skip"); 6if (LIBXML_VERSION < 20629) die("skip: libxml2 2.6.29+ required"); 7?> 8--FILE-- 9<?php 10 11$xw = new XMLWriter(); 12$xw->openMemory(); 13$xw->setIndent(TRUE); 14$xw->setIndentString(' '); 15$xw->startDocument('1.0', "UTF-8"); 16$xw->startElement('root'); 17$xw->startElementNS('ns1', 'child1', 'urn:ns1'); 18$xw->startAttributeNS('ns1', 'att1', 'urn:ns1'); 19$xw->text('a&b'); 20$xw->endAttribute(); 21$xw->writeAttribute('att2', "double\" single'"); 22$xw->startAttributeNS('ns1', 'att2', 'urn:ns1'); 23$xw->text("<>\"'&"); 24$xw->endAttribute(); 25$xw->writeElement('chars', "special characters: <>\"'&"); 26$xw->endElement(); 27$xw->endDocument(); 28// Force to write and empty the buffer 29$output = $xw->flush(true); 30print $output; 31?> 32--EXPECT-- 33<?xml version="1.0" encoding="UTF-8"?> 34<root> 35 <ns1:child1 ns1:att1="a&b" att2="double" single'" ns1:att2="<>"'&" xmlns:ns1="urn:ns1"> 36 <chars>special characters: <>"'&</chars> 37 </ns1:child1> 38</root> 39