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>
*/
?>