【PHP8.x】ownerDocumentプロパティの使い方

ownerDocumentプロパティの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

ownerDocumentプロパティは、Dom\Elementクラスのインスタンスが属するDOMドキュメントを表すDom\Documentオブジェクトを保持するプロパティです。このプロパティは、HTMLやXMLドキュメントのようなツリー構造を持つデータにおいて、特定の要素がどのドキュメント全体に属しているかを特定するために使用されます。

たとえば、あるDom\Elementオブジェクト(HTML要素など)から、その要素が含まれている全体のDom\Documentオブジェクトにアクセスしたい場合に、このownerDocumentプロパティが役立ちます。これにより、その要素が属するドキュメントに対して、新しい要素を作成する(createElement)、テキストノードを作成する(createTextNode)といった、ドキュメント操作のためのメソッドを呼び出すことができるようになります。

親ノードを示すparentNodeプロパティとは異なり、ownerDocumentプロパティは、要素の直上の親ノードが何であっても、常にその要素が所属する最上位のDom\Documentオブジェクトを指します。つまり、要素がどれだけ深い階層にあっても、常にそのルーツであるドキュメントオブジェクトへの直接的な参照を提供します。このプロパティは読み取り専用であり、その値を変更することはできません。DOM操作を行う上で、特定の要素がどのドキュメントのコンテキストにあるかを理解し、ドキュメント全体にアクセスするための重要な手段となります。

構文(syntax)

1<?php
2$document = new DOMDocument();
3$element = $document->createElement('myElement');
4
5$ownerDocumentObject = $element->ownerDocument;
6?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

?Dom\Document

このプロパティは、その要素が属している Dom\Document オブジェクトを返します。要素がどのドキュメントにも属していない場合は null を返します。

【PHP8.x】ownerDocumentプロパティの使い方 | いっしー@Webエンジニア