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

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

作成日: 更新日:

基本的な使い方

localNameプロパティは、XMLやHTMLのノードにおける、名前空間プレフィックスを除いたローカル名を保持するプロパティです。XMLでは、要素名や属性名に名前空間プレフィックスを付けて名前の衝突を避けることがあります。例えば、<ns:item>という要素がある場合、nodeNameプロパティはプレフィックスを含むns:itemという文字列を返します。これに対して、localNameプロパティはプレフィックス部分であるns:を除いたitemという部分、すなわちローカル名のみを返します。この機能により、開発者は名前空間を意識することなく、要素自体の名前を取得して処理を記述できます。もし対象のノードに名前空間プレフィックスが存在しない場合、localNamenodeNameプロパティと同じ値を返します。また、このプロパティは読み取り専用であり、値を直接変更することはできません。要素や属性以外の、例えばテキストノードやコメントノードのように名前を持たないノードに対してこのプロパティにアクセスした場合、値としてnullが返されます。

構文(syntax)

1<?php
2$xmlString = '<prefix:book>Sample Book</prefix:book>';
3
4$dom = new DOMDocument();
5$dom->loadXML($xmlString);
6
7$node = $dom->documentElement;
8
9// ノードのローカル名 (接頭辞を除いた名前) を取得します。
10$localName = $node->localName;
11
12echo $localName;
13?>

引数(parameters)

戻り値(return)

string|null

DOMNode オブジェクトのローカル名を表す文字列、または要素に名前空間が指定されていない場合は null を返します。