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

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

作成日: 更新日:

基本的な使い方

nodeTypeプロパティは、DOMNodeオブジェクトが表すDOMツリー内のノードの種類を識別するための整数値を保持するプロパティです。

DOM(Document Object Model)は、HTMLやXMLドキュメントの構造を表現し、プログラムからその内容や構造にアクセス・操作するためのAPIです。DOMツリーでは、ドキュメントの各構成要素(要素、属性、テキスト、コメントなど)が「ノード」として表現されます。このnodeTypeプロパティは、特定のDOMNodeインスタンスが、これら多数のノードタイプのうちどれに該当するかを示す数値を提供します。

システムエンジニアを目指す方にとって、このプロパティはDOMツリーを走査し、ノードの種類に応じて処理を分岐させる際に非常に重要です。例えば、特定の要素ノードだけを対象に処理を行いたい場合や、テキストノードの内容を抽出したい場合などに、nodeTypeの値を確認することで適切なロジックを適用できます。

返される値は、PHPのDOM拡張機能によって定義されている定数(例えば、要素ノードを表すXML_ELEMENT_NODE、テキストノードを表すXML_TEXT_NODE、コメントノードを表すXML_COMMENT_NODEなど)と対応しています。これらの定数を使用することで、可読性の高いコードでノードの種類を判別することが可能です。

このプロパティは、PHP 8で提供されるDOM拡張機能の一部であり、DOMDocumentやDOMElementを含むDOMNodeのすべてのサブクラスで利用できます。これにより、どのような種類のノードであっても、共通の手段でその種類を判別し、柔軟なドキュメント処理を実現できます。

構文(syntax)

1<?php
2$dom = new DOMDocument();
3$element = $dom->createElement('example');
4$type = $element->nodeType;
5?>

引数(parameters)

戻り値(return)

int

DOMNodeのnodeTypeプロパティは、ノードの種類を示す整数値を返します。この整数値は、DOMNode::ELEMENT_NODE(要素ノード)やDOMNode::TEXT_NODE(テキストノード)などの定数で定義されています。