(PHP 5, PHP 7)
はじめに
HTML ドキュメントあるいは XML ドキュメント全体を表し、 ドキュメントツリーのルートとなります。
クラス概要
DOMDocument extends DOMNode {
public
readonly
string
$actualEncoding
public
readonly
DOMConfiguration
$config
public
readonly
DOMDocumentType
$doctype
public
readonly
DOMElement
$documentElement
public
string|null
$documentURI
public
string
$encoding
public
bool
$formatOutput
public
readonly
DOMImplementation
$implementation
public
bool
$preserveWhiteSpace
= true
public
bool
$recover
public
bool
$resolveExternals
public
bool
$standalone
public
bool
$strictErrorChecking
= true
public
bool
$substituteEntities
public
bool
$validateOnParse
= false
public
string
$version
public
readonly
string|null
$xmlEncoding
public
bool
$xmlStandalone
public
string
$xmlVersion
/* 継承したプロパティ */
public
readonly
string
$nodeName
public
string
$nodeValue
public
readonly
int
$nodeType
public
readonly
DOMNode|null
$parentNode
public
readonly
DOMNodeList
$childNodes
public
readonly
DOMNode|null
$firstChild
public
readonly
DOMNode|null
$lastChild
public
readonly
DOMNode|null
$previousSibling
public
readonly
DOMNode|null
$nextSibling
public
readonly
DOMNamedNodeMap|null
$attributes
public
readonly
DOMDocument|null
$ownerDocument
public
readonly
string|null
$namespaceURI
public
string
$prefix
public
readonly
string
$localName
public
readonly
string|null
$baseURI
public
string
$textContent
/* メソッド */
public __construct
([ string $version
[, string $encoding
]] )
public createAttribute
( string $name
) : DOMAttr
public createAttributeNS
( string $namespaceURI
, string $qualifiedName
) : DOMAttr
public createCDATASection
( string $data
) : DOMCDATASection
public createComment
( string $data
) : DOMComment
public createDocumentFragment ( ) : DOMDocumentFragment
public createElement
( string $name
[, string $value
] ) : DOMElement
public createElementNS
( string $namespaceURI
, string $qualifiedName
[, string $value
] ) : DOMElement
public createEntityReference
( string $name
) : DOMEntityReference
public createProcessingInstruction
( string $target
[, string $data
] ) : DOMProcessingInstruction
public createTextNode
( string $content
) : DOMText
public getElementById
( string $elementId
) : DOMElement
public getElementsByTagName
( string $name
) : DOMNodeList
public getElementsByTagNameNS
( string $namespaceURI
, string $localName
) : DOMNodeList
public importNode
( DOMNode $importedNode
[, bool $deep
= false
] ) : DOMNode
public loadHTML
( string $source
[, int $options
= 0
] ) : bool
public loadHTMLFile
( string $filename
[, int $options
= 0
] ) : bool
public normalizeDocument ( ) : void
public registerNodeClass
( string $baseclass
, string $extendedclass
) : bool
public relaxNGValidate
( string $filename
) : bool
public relaxNGValidateSource
( string $source
) : bool
public save
( string $filename
[, int $options
= 0
] ) : int
public saveHTMLFile
( string $filename
) : int
public schemaValidate
( string $filename
[, int $flags
= 0
] ) : bool
public schemaValidateSource
( string $source
[, int $flags
] ) : bool
public validate ( ) : bool
public xinclude
([ int $options
= 0
] ) : int
/* 継承したメソッド */
public DOMNode::appendChild
( DOMNode $newnode
) : DOMNode
public DOMNode::C14N
([ bool $exclusive
[, bool $with_comments
[, array $xpath
[, array $ns_prefixes
]]]] ) : string|false
public DOMNode::C14NFile
( string $uri
[, bool $exclusive
= false
[, bool $with_comments
= false
[, array $xpath
[, array $ns_prefixes
]]]] ) : int|false
public DOMNode::cloneNode
([ bool $deep
] ) : DOMNode
public DOMNode::getLineNo ( ) : int
public DOMNode::getNodePath ( ) : string
public DOMNode::hasAttributes ( ) : bool
public DOMNode::hasChildNodes ( ) : bool
public DOMNode::insertBefore
( DOMNode $newnode
[, DOMNode $refnode
] ) : DOMNode
public DOMNode::isDefaultNamespace
( string $namespaceURI
) : bool
public DOMNode::isSameNode
( DOMNode $node
) : bool
public DOMNode::isSupported
( string $feature
, string $version
) : bool
public DOMNode::lookupNamespaceUri
( string $prefix
) : string
public DOMNode::lookupPrefix
( string $namespaceURI
) : string
public DOMNode::normalize ( ) : void
public DOMNode::removeChild
( DOMNode $oldnode
) : DOMNode
public DOMNode::replaceChild
( DOMNode $newnode
, DOMNode $oldnode
) : DOMNode
}
プロパティ
actualEncoding
非推奨。ドキュメントの実際のエンコーディング。 読み込み専用で、
encoding
と同等の内容です。config
非推奨。 DOMDocument::normalizeDocument() を実行する際に使用する設定。
doctype
このドキュメントに関連付けられた文書型宣言
documentElement
ドキュメントの子ノードであるドキュメント要素に対し、 直接アクセスするために便利な属性
documentURI
ドキュメントの位置。未定義の場合は
null
encoding
XML 宣言で指定したドキュメントのエンコーディング。 この属性は、DOM Level 3 の最終的な仕様には存在しません。 しかし、この実装で XML ドキュメントのエンコーディングを扱うにはこれを使用するしかありません。
formatOutput
字下げや空白を考慮してきれいに整形した出力を行う。 これは、ドキュメントを
preserveWhitespace
を有効にして読み込んだ場合は効果がありません。implementation
このドキュメントを処理する DOMImplementation オブジェクト
preserveWhiteSpace
余分な空白を取り除かない。デフォルトは
true
false
に設定すると、 DOMDocument::load() のoption
にLIBXML_NOBLANKS
を渡すのと同じ効果があります。recover
プロプライエタリ。 リカバリーモードを有効にし、整形式でないドキュメントのパースを試みます。 この属性は DOM の仕様にはなく、libxml に固有のものです。
resolveExternals
文書型宣言で外部エンティティを読み込む際に
true
を設定する。 XML ドキュメントに文字エンティティを含める際に便利です。standalone
非推奨。 そのドキュメントがスタンドアローンかどうかを XML 宣言で指定したもの。
xmlStandalone
に対応します。strictErrorChecking
エラー時に DOMException をスローする。デフォルトは
true
substituteEntities
プロプライエタリ。 エンティティの置換を行うかどうか。 この属性は DOM の仕様にはなく、libxml に固有のものです。
警告
エンティティの置換を有効にすると、XML外部エンティティ参照攻撃(XXE) を容易にしてしまうかもしれません。
validateOnParse
DTD を読み込んで検証する。デフォルトは
false
version
非推奨。 XML のバージョン。
xmlVersion
に対応します。xmlEncoding
XML 宣言の一部として、このドキュメントのエンコーディングを 指定する属性。指定されていない場合や不明な場合 (たとえば ドキュメントがメモリ上に存在する場合など) は
null
xmlStandalone
XML 宣言の一部として、このドキュメントがスタンドアローンか どうかを指定する。指定されていない場合は
false
xmlVersion
XML 宣言の一部として、このドキュメントのバージョン番号を指定する。 バージョン番号が定義されておらず、ドキュメントが "XML" の機能を サポートしている場合は、値は "1.0"
注意
注意:
DOM拡張機能 は UTF-8 エンコーディングを使います。ISO-8859-1 エンコーディングのテキストを扱う場合は utf8_encode() と utf8_decode() を使ってください。ISO-8859-1 以外のエンコーディングの場合は iconv を使ってください。
注意:
DOMDocument オブジェクトに対して json_encode() を使うと、結果は空オブジェクトをエンコードしたものになります。
目次
- DOMDocument::__construct — 新しい DOMDocument オブジェクトを作成する
- DOMDocument::createAttribute — 新しい属性を作成する
- DOMDocument::createAttributeNS — 関連付けられた名前空間に新しい属性を作成する
- DOMDocument::createCDATASection — 新しい cdata ノードを作成する
- DOMDocument::createComment — 新しい comment ノードを作成する
- DOMDocument::createDocumentFragment — 新しい文書片を作成する
- DOMDocument::createElement — 新しい要素ノードを作成する
- DOMDocument::createElementNS — 関連付けられた名前空間に新しい要素を作成する
- DOMDocument::createEntityReference — 新しいエンティティ参照ノードを作成する
- DOMDocument::createProcessingInstruction — 新しい PI ノードを作成する
- DOMDocument::createTextNode — 新しいテキストノードを作成する
- DOMDocument::getElementById — id に対応する要素を検索する
- DOMDocument::getElementsByTagName — 指定したローカルタグ名に対応するすべての要素を検索する
- DOMDocument::getElementsByTagNameNS — 指定した名前空間で、タグ名に対応するすべての要素を検索する
- DOMDocument::importNode — 現在のドキュメントにノードをインポートする
- DOMDocument::load — ファイルから XML を読み込む
- DOMDocument::loadHTML — 文字列から HTML を読み込む
- DOMDocument::loadHTMLFile — ファイルから HTML を読み込む
- DOMDocument::loadXML — 文字列から XML を読み込む
- DOMDocument::normalizeDocument — ドキュメントを正規化する
- DOMDocument::registerNodeClass — 基底ノード型を作成する際に使用する拡張クラスを登録する
- DOMDocument::relaxNGValidate — ドキュメントを relaxNG で検証する
- DOMDocument::relaxNGValidateSource — ドキュメントを relaxNG で検証する
- DOMDocument::save — 内部の XML ツリーをファイルに出力する
- DOMDocument::saveHTML — 内部のドキュメントを HTML 形式の文字列として出力する
- DOMDocument::saveHTMLFile — 内部のドキュメントを HTML 形式でファイルに出力する
- DOMDocument::saveXML — 内部の XML ツリーを文字列として出力する
- DOMDocument::schemaValidate — スキーマに基づいてドキュメントを検証する。XML Schema 1.0 のみサポート。
- DOMDocument::schemaValidateSource — スキーマに基づいてドキュメントを検証する
- DOMDocument::validate — DTD に基づいてドキュメントを検証する
- DOMDocument::xinclude — DOMDocument オブジェクト内の XIncludes を置換する
/* プロパティ */