Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【PHP8.x】DOMEntityReference::lookupNamespaceURI()メソッドの使い方

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

作成日: 更新日:

基本的な使い方

lookupNamespaceURIメソッドは、指定された名前空間接頭辞に対応する名前空間URIを、現在のノードから祖先ノードに向かって検索するメソッドです。XML文書では、要素名の衝突を避けるために名前空間が使用されます。この名前空間はURIによって一意に識別され、通常はrdf:のような短い接頭辞と関連付けられます。このメソッドは、その接頭辞を手がかりに対応するURIを見つけ出す役割を担います。引数に名前空間接頭辞の文字列を渡すと、その接頭辞が定義されている最も近い祖先要素まで遡って検索し、対応する名前空間URIを文字列として返します。もし引数にnullを渡した場合は、その場所で有効なデフォルトの名前空間URIを検索します。指定された接頭辞に対応する名前空間URIが見つからない場合、またはデフォルト名前空間が定義されていない場合にはnullを返します。これにより、特定のノードの文脈における名前空間の定義を動的に解決できます。

構文(syntax)

1<?php
2
3$xmlString = <<<XML
4<?xml version="1.0" encoding="utf-8"?>
5<!DOCTYPE root [
6    <!ENTITY myEntity "entity text">
7]>
8<root xmlns:ns="http://www.example.com/namespace">
9    <child>&myEntity;</child>
10</root>
11XML;
12
13$document = new DOMDocument();
14$document->loadXML($xmlString);
15
16$entityReferenceNode = $document->getElementsByTagName('child')->item(0)->firstChild;
17
18$namespaceURI = $entityReferenceNode->lookupNamespaceURI('ns');
19
20var_dump($namespaceURI);
21
22?>

引数(parameters)

?string $prefix

  • ?string $prefix: 名前空間のプレフィックス。null の場合は、デフォルトの名前空間 URI が返されます。

戻り値(return)

?string

DOMEntityReference オブジェクトが参照する名前空間 URI を文字列で返します。名前空間 URI が見つからない場合は null を返します。

関連コンテンツ

関連プログラミング言語