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

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

作成日: 更新日:

基本的な使い方

parentNodeプロパティは、DOMツリー内における現在の要素の直接の親ノードを保持するプロパティです。HTMLやXML文書は、要素が入れ子になる階層構造で構成されています。このプロパティは、ある要素がどの要素の内部に配置されているか、つまり親子関係を遡って確認するために使用されます。例えば、<div>要素内に<p>要素がある場合、その<p>要素オブジェクトのparentNodeプロパティを参照すると、親である<div>要素オブジェクトを取得することができます。取得できる親ノードは、必ずしもDOMElementであるとは限らず、文書全体を表すDOMDocumentオブジェクトである場合もあります。もし要素に親ノードが存在しない場合、例えば、まだ文書に追加されていない新規作成された要素や、ツリー構造の最上位に位置するノードの場合、このプロパティはnullを返します。このため、parentNodeプロパティを利用する際は、返り値がnullでないことを確認する処理が必要になることがあります。なお、このプロパティは読み取り専用であり、親子関係を変更する際にはappendChildメソッドなどを用いてノードを操作する必要があります。

構文(syntax)

1<?php
2
3$html = "<div><p>This is a paragraph.</p></div>";
4
5$doc = new DOMDocument();
6$doc->loadHTML($html);
7
8// <p>要素を取得します
9$element = $doc->getElementsByTagName('p')->item(0);
10
11// parentNodeプロパティを使用して親ノードを取得します
12$parentNode = $element->parentNode;
13
14// 親ノードのタグ名を出力します
15// 出力: div
16echo $parentNode->nodeName;
17
18?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

DOMNode|null

このプロパティは、この要素が属している親ノードを表すDOMNodeオブジェクト、または親ノードが存在しない場合はnullを返します。

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