添加 DocType 以退出 DOMDocument
Add DocType to exits DOMDocument
我有一个 Php class 喜欢“Extension_DOMDocument”,这扩展了 PHP “DOMDocument” class.
我创建了一个 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);
如何将 DocType 添加到 $objcDom
?
您可以使用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();
输出:
<?xml version="1.0"?>
<!DOCTYPE example>
<foo/>
我会用这个
<?php
// Creates an instance of the DOMImplementation class
$imp = new DOMImplementation;
// Creates a DOMDocumentType instance
$dtd = $imp->createDocumentType('graph', '', 'graph.dtd');
// Creates a DOMDocument instance
$dom = $imp->createDocument("", "", $dtd);
// Set other properties
$dom->encoding = 'UTF-8';
$dom->standalone = false;
// Create an empty element
$element = $dom->createElement('graph');
// Append the element
$dom->appendChild($element);
// Retrieve and print the document
echo $dom->saveXML();
?>
检查:http://php.net/manual/en/domimplementation.createdocumenttype.php
我有一个 Php class 喜欢“Extension_DOMDocument”,这扩展了 PHP “DOMDocument” class.
我创建了一个 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);
如何将 DocType 添加到 $objcDom
?
您可以使用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();
输出:
<?xml version="1.0"?>
<!DOCTYPE example>
<foo/>
我会用这个
<?php
// Creates an instance of the DOMImplementation class
$imp = new DOMImplementation;
// Creates a DOMDocumentType instance
$dtd = $imp->createDocumentType('graph', '', 'graph.dtd');
// Creates a DOMDocument instance
$dom = $imp->createDocument("", "", $dtd);
// Set other properties
$dom->encoding = 'UTF-8';
$dom->standalone = false;
// Create an empty element
$element = $dom->createElement('graph');
// Append the element
$dom->appendChild($element);
// Retrieve and print the document
echo $dom->saveXML();
?>
检查:http://php.net/manual/en/domimplementation.createdocumenttype.php