【PHP8.x】nodeNameプロパティの使い方
nodeNameプロパティの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
nodeNameプロパティは、PHPのDOM拡張機能に含まれるDom\Attrクラスに属し、HTMLやXMLドキュメントの要素に付加される「属性」の名前(キー)を保持するプロパティです。Dom\Attrクラスは、WebページやXMLデータの構造をプログラムから操作するための標準的なAPIであるDocument Object Model (DOM) において、<div id="main"> の id のような、要素の追加情報を定義する属性そのものをオブジェクトとして表現するために使用されます。
このnodeNameプロパティは、そのDom\Attrオブジェクトが表す属性の固有の名前を取得するために利用されます。具体的には、もしDom\Attrオブジェクトが<a href="link.html">のhref属性を表しているのであれば、nodeNameプロパティにアクセスすることでhrefという文字列値が得られます。同様に、<img src="image.jpg">のsrc属性を表していればsrcという文字列が返されます。
nodeNameプロパティは読み取り専用であり、その値をプログラムから変更することはできません。取得される値は常に文字列型です。このプロパティは、DOMツリーを走査し、特定の属性を識別したり、属性の種類に基づいて異なる処理を適用したりする際に不可欠な情報を提供します。システムがドキュメント構造を解析し、属性のキー名に基づいて動的に動作を決定するための基本的な手段として広く活用されます。
構文(syntax)
1<?php 2$dom = new DOMDocument(); 3$element = $dom->createElement('myElement'); 4$element->setAttribute('data-custom', 'value'); 5 6// Dom\Attr オブジェクトを取得 7$attribute = $element->attributes->getNamedItem('data-custom'); 8 9// Dom\Attr::nodeName プロパティにアクセス 10$name = $attribute->nodeName; 11 12echo $name; // 出力: data-custom 13?>
引数(parameters)
引数なし
引数はありません
戻り値(return)
string
このプロパティは、属性のローカル名(名前空間プレフィックスがない場合)または完全修飾名(名前空間プレフィックスがある場合)を文字列として返します。