【PHP8.x】DOMProcessingInstruction::parentElementプロパティの使い方
parentElementプロパティの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
parentElementプロパティは、DOMツリー構造において、現在の処理命令ノード(DOMProcessingInstruction)の直接の親である要素(DOMElement)を保持するプロパティです。DOMでは文書全体がノードの階層的なツリーとして表現されており、このプロパティを利用することで、特定の処理命令がどの要素タグの内部に含まれているかを簡単に取得できます。このプロパティが返す値は、親が存在し、かつその親が要素ノードである場合はDOMElementオブジェクト、それ以外の場合にはnullとなります。例えば、処理命令が文書の最上位に配置されているなど、親が要素ではない場合にはnullが返されます。類似のプロパティにparentNodeがありますが、parentNodeが要素以外のノード(例えばDOMDocumentなど)も返す可能性があるのに対し、parentElementは親がDOMElementである場合に限定して値を返すという違いがあります。なお、このプロパティは読み取り専用であり、値を代入して親子関係を直接変更することはできません。
構文(syntax)
1<?php 2$xml = '<root><?php-app process-data?></root>'; 3$doc = new DOMDocument(); 4$doc->loadXML($xml); 5 6// 処理命令ノード(DOMProcessingInstruction)を取得 7$pi_node = $doc->documentElement->firstChild; 8 9// parentElementプロパティで親要素(DOMElement)を取得 10$parentElement = $pi_node->parentElement; 11 12// 親要素のタグ名を出力 13if ($parentElement !== null) { 14 echo $parentElement->tagName; // "root"と出力される 15} 16?>
引数(parameters)
引数なし
引数はありません
戻り値(return)
DOMElement|null
DOMProcessingInstruction オブジェクトの親要素を表す DOMElement オブジェクト、または親要素が存在しない場合は null を返します。