【PHP8.x】hasChildNodesメソッドの使い方

hasChildNodesメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

hasChildNodesメソッドは、DOMAttrオブジェクトが子ノードを持っているかどうかを判定するメソッドです。DOMAttrは、XMLやHTMLドキュメント内で要素に付加される属性(attribute)を表すクラスです。例えば、<div id="main">というHTML要素におけるid="main"の部分がDOMAttrオブジェクトとして扱われます。

このhasChildNodesメソッドは、呼び出されたDOMAttrオブジェクトが1つ以上の子ノードを持っている場合にtrue(真)を返し、子ノードを全く持たない場合にfalse(偽)を返します。DOMAttrオブジェクトの場合、その子ノードは通常、属性の値を表すDOMTextノードのみとなります。つまり、このメソッドは、対象の属性が空ではないテキスト値を持っているかどうかを確認する際に役立ちます。

システムエンジニアを目指す初心者の方にとって、このメソッドは、XMLやHTMLドキュメントをPHPで解析・操作する際に、特定の属性に値が設定されているか、あるいはその値が空ではないかといった条件分岐を行う場面で非常に有用です。例えば、特定の属性に値が存在する場合のみ処理を実行するといったロジックを実装する際に活用できます。戻り値は真偽値(bool型)であるため、条件式に直接使用できます。

構文(syntax)

1<?php
2$dom = new DOMDocument();
3$element = $dom->createElement('node');
4$attribute = $dom->createAttribute('id');
5$attribute->value = 'some_id';
6$element->appendChild($attribute);
7
8// DOMAttr オブジェクトを取得
9$domAttr = $element->attributes->getNamedItem('id');
10
11// hasChildNodes メソッドを呼び出す
12$domAttr->hasChildNodes();

引数(parameters)

引数なし

引数はありません

戻り値(return)

bool

このメソッドは、DOMAttrオブジェクトに子ノードが存在するかどうかを示すブール値(trueまたはfalse)を返します。

【PHP8.x】hasChildNodesメソッドの使い方 | いっしー@Webエンジニア