で DOMDocument を作成する場合DOMImplementation::createDocument()
、コンストラクターの 3 番目の引数として doctype を指定できます。この Doctype はドキュメントに「関連付け」られ、後で .xml を使用して取得できます$document->doctype
。
ただし、これは読み取り専用の属性です (エンコーディングやバージョンとは異なります!)。
既存の DOMDocument オブジェクトの doctype プロパティを変更する方法はありますか?
私が考えることができる唯一の回避策は、新しいDoctypeで新しいDOMDocumentを作成し、古いものからコンテンツをインポートしてコピーすることです。