XMLWriter::endDocument() 會正確關閉所有尚未關閉的元素。
未使用 XMLWriter::endDocument()
<?php
$xml = new XMLWriter();
$xml->openUri('php://stdout');
$xml->startDocument();
$xml->startElement('a');
$xml->startElement('b');
$xml->startElement('c');
$xml->startAttribute('foo');
exit;
/*
輸出:
<?xml version="1.0"?>
<a><b><c foo="
*/
?>
使用 XMLWriter::endDocument()
<?php
$xml = new XMLWriter();
$xml->openUri('php://stdout');
$xml->startDocument();
$xml->startElement('a');
$xml->startElement('b');
$xml->startElement('c');
$xml->startAttribute('foo');
$xml->endDocument();
exit;
/*
輸出:
<?xml version="1.0"?>
<a><b><c foo=""/></b></a>
*/
?>