【PHP8.x】baseURIプロパティの使い方
baseURIプロパティの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
baseURIプロパティは、DOMNotationクラスのインスタンスが参照するベースURIを保持するプロパティです。DOMNotationクラスは、XMLドキュメントのDTD(Document Type Definition)内で定義される「記法(Notation)」を表します。記法は、特定のデータ形式を識別するために使用され、例えば、画像ファイル形式や外部の表記法などを指定する際に利用されます。
このbaseURIプロパティは、DOMNotationノードが属するドキュメント内のノードのベースURIを提供します。ベースURIとは、相対URI(Uniform Resource Identifier)を絶対URIに解決する際の基準となるURIのことです。例えば、XMLドキュメント内で定義された記法が、外部リソースへの相対パスを含んでいる場合、このbaseURIプロパティの値を利用することで、その相対パスを正しく解決し、リソースの正確な場所を特定することができます。
このプロパティは文字列型の値を返しますが、もしベースURIが明示的に指定されていない場合や、ノードがまだドキュメントツリーに属していないなどの理由でベースURIを特定できない場合は、nullを返します。PHPのDOM拡張機能を利用してXMLドキュメントを操作する際に、外部リソースとの関連性を正確に管理するために重要な情報源となります。特に、XMLパーサーが外部実体を参照する際の基準を理解する上で役立ちます。
構文(syntax)
1<?php 2$xmlString = '<!DOCTYPE root [<!NOTATION foo PUBLIC "bar">]><root/>'; 3$dom = new DOMDocument(); 4$dom->loadXML($xmlString); 5 6/** @var DOMNotation $notation */ 7$notation = $dom->doctype->notations->item(0); 8 9$baseURI = $notation->baseURI;
引数(parameters)
引数なし
引数はありません
戻り値(return)
string
DOMNotation オブジェクトの基底 URI を表す文字列を返します。