添加 DocType 退出 DOMDocument

pet*_*t21 3 php xml doctype dom domdocument

我有一个像“Extension_DOMDocument”这样的 PHP 类,它扩展了 PHP“DOMDocument”类。

我创建了一个 Extension_DOMDocument 的新对象,并将 DocType 添加到该对象中。

我的代码是:

// $this->data is an array to convert array to xml 
$objcDom = new Extension_DOMDocument('1.0', 'utf-8'); 
$objcDom->fromMixed($this->data);
Run Code Online (Sandbox Code Playgroud)

如何添加 DocType $objcDom

ThW*_*ThW 5

您可以使用 DOM 实现来创建文档类型对象。文档类型对象仍然是 DOM 节点。您可以将它们附加到现有文档中。

class MyDOMDocument extends DOMDocument {}

$dom = new MyDOMDocument();
$implementation = new DOMImplementation();
$dom->appendChild($implementation->createDocumentType('example'));
$dom->appendChild($dom->createElement('foo'));

echo $dom->saveXml();
Run Code Online (Sandbox Code Playgroud)

输出:

<?xml version="1.0"?>
<!DOCTYPE example>
<foo/>
Run Code Online (Sandbox Code Playgroud)