(PHP 5, PHP 7, PHP 8)
DOMImplementation::createDocumentType — Creates an empty DOMDocumentType object
$qualifiedName
, string $publicId
= "", string $systemId
= ""): DOMDocumentType|falseCreates an empty DOMDocumentType object. Entity declarations and notations are not made available. Entity reference expansions and default attribute additions do not occur.
qualifiedName
The qualified name of the document type to create.
publicId
The external subset public identifier.
systemId
The external subset system identifier.
A new DOMDocumentType node with its
ownerDocument
set to null
or false
on error.
DOM_NAMESPACE_ERR
Raised if there is an error with the namespace, as determined by
qualifiedName
.
Prior to PHP 8.0.0 this method
could be called statically, but would issue an E_DEPRECATED
error.
As of PHP 8.0.0 calling this method statically throws an Error exception
Example #1 Creating a document with an attached DTD
<?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();
?>
The above example will output:
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE graph SYSTEM "graph.dtd"> <graph/>