【PHP8.x】parentElementプロパティの使い方
parentElementプロパティの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
parentElementプロパティは、DOMツリーにおける親要素を保持するプロパティです。このプロパティが属するDOMDocumentTypeクラスは、XMLやHTMLドキュメントの冒頭に記述される<!DOCTYPE ...>宣言を表すノードです。例えば、HTMLドキュメントの<!DOCTYPE html>といった宣言を扱います。
一般的に、DOM(Document Object Model)の文脈におけるparentElementプロパティは、現在のノードの親ノードが要素(Element)である場合に、その親要素への参照を返します。もし親ノードが要素ではない場合(例えば、ドキュメントノードやドキュメントフラグメントノードの場合)、このプロパティはnullを返します。
DOMDocumentTypeノードの場合、その親ノードは常にDOMDocumentノード(ドキュメント全体を表すルートノード)になります。DOMDocumentノードは、HTMLの<html>タグやXMLのルート要素のような「要素」とは異なる種類のノードです。
そのため、DOMDocumentTypeクラスのparentElementプロパティにアクセスしても、親ノードが要素ではないと判断され、結果として常にnullを保持します。このプロパティは、ドキュメントタイプ宣言の親が直接的なHTML/XML要素ではないというDOMの構造的特性を反映しているため、parentElementプロパティを参照する際は、常にnullが返されることを想定して処理を記述する必要があります。
構文(syntax)
1<?php 2$document = new DOMDocument(); 3$document->loadHTML('<!DOCTYPE html><html><body>Hello</body></html>'); 4 5// ドキュメントタイプノードを取得します 6$doctype = $document->doctype; 7 8// parentElement プロパティにアクセスします。 9// PHP 8.0 ではこのプロパティは非推奨であり、常に null を返します。 10$parentElement = $doctype->parentElement; 11 12var_dump($parentElement); 13?>
引数(parameters)
引数なし
引数はありません
戻り値(return)
戻り値なし
戻り値はありません