(PHP 5, PHP 7)
DOMImplementation::createDocumentType — 空の DOMDocumentType オブジェクトを作成する
$qualifiedName
= NULL
[, string $publicId
= NULL
[, string $systemId
= NULL
]]] )空の DOMDocumentType オブジェクトを作成します。 エンティティ宣言および記法は使用可能にはなりません。エンティティ参照の 展開やデフォルト属性の追加は発生しません。
qualifiedName
作成されるドキュメント型の修飾名。
publicId
外部サブセットの公開 ID。
systemId
外部サブセットのシステム ID。
ownerDocument を NULL
に設定した
新しい DOMDocumentType ノードを返します。
DOM_NAMESPACE_ERR
qualifiedName
で指定した名前空間に間違いがある場合に発生します。
このメソッドは、静的にコールすることも
できはしますが、E_STRICT
エラーが発生します。
例1 DTD を添付してドキュメントを作成する
<?php
// DOMImplementation クラスのインスタンスを作成します
$imp = new DOMImplementation;
// DOMDocumentType のインスタンスを作成します
$dtd = $imp->createDocumentType('graph', '', 'graph.dtd');
// DOMDocument のインスタンスを作成します
$dom = $imp->createDocument("", "", $dtd);
// その他のプロパティを設定します
$dom->encoding = 'UTF-8';
$dom->standalone = false;
// 空の要素を作成します
$element = $dom->createElement('graph');
// 要素を追加します
$dom->appendChild($element);
// ドキュメントの内容を出力します
echo $dom->saveXML();
?>
上の例の出力は以下となります。
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE graph SYSTEM "graph.dtd"> <graph/>