【PHP8.x】nodeNameプロパティの使い方
nodeNameプロパティの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
nodeNameプロパティは、PHPのDOM拡張機能において、XMLやHTMLドキュメントの構造を操作する際に用いられるDOMTextクラスのインスタンスが表すノードの名前を保持するプロパティです。
DOMTextクラスは、ウェブページやXMLファイル内のテキストコンテンツ、つまり要素の間に存在する文字データや属性の値など、純粋な文字列部分を表現するために使用されます。このnodeNameプロパティは、DOM(Document Object Model)ツリー内の各ノードがどのような種類のノードであるかを識別するための名前を提供します。
特にDOMTextオブジェクトの場合、このnodeNameプロパティは常に固定の文字列である#textを返します。これは、このノードがテキストデータであることを明確に示すための共通の規則です。例えば、<div>Hello</div>というHTMLの例では、Helloという文字列の部分がDOMTextノードとして扱われ、そのnodeNameは#textとなります。これに対して、div要素のような実際のタグを表すDOMElementオブジェクトのnodeNameは、そのタグ名(この場合はdiv)を返します。
このプロパティは読み取り専用であり、値を変更することはできません。主に、処理中のノードがテキストノードであるかどうかを判別したり、ノードの種類に基づいて異なる処理を適用したりする際に利用されます。ノードが実際に保持するテキストの内容を取得したい場合は、nodeNameではなくnodeValueプロパティを使用することに注意が必要です。nodeNameはノードの「型」を示す識別子として機能し、nodeValueはノードの「内容」を保持します。
構文(syntax)
1<?php 2$dom = new DOMDocument(); 3$textNode = $dom->createTextNode('Example Text'); 4 5// DOMTextオブジェクトのnodeNameプロパティにアクセス 6echo $textNode->nodeName; 7?>
引数(parameters)
引数なし
引数はありません
戻り値(return)
string
DOMText オブジェクトのノード名を返します。DOMText の場合、この値は常に #text となります。