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

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

作成日: 更新日:

基本的な使い方

publicIdプロパティは、DOMDocumentTypeクラスに属し、XMLやHTMLドキュメントのDOCTYPE宣言に含まれる公開識別子(PUBLIC ID)を保持するプロパティです。

DOMDocumentTypeクラスは、ドキュメントの冒頭に記述されるDOCTYPE宣言、すなわちドキュメント型定義を表現します。この宣言は、そのドキュメントがどのようなDTD(Document Type Definition)に基づいて記述されているかを示す重要な情報です。publicIdプロパティは、DOCTYPE宣言内でPUBLICキーワードに続いて指定される、公開識別子と呼ばれる文字列の値を保持します。この公開識別子は、DTDのリソースを一意に特定するために使用され、通常は特定の標準規格や組織によって定められた形式で記述されます。

例えば、HTML4.01の厳格なDTDを参照するDOCTYPE宣言では、"-//W3C//DTD HTML 4.01//EN"のような文字列がpublicIdとして保持されます。これは、W3Cによって定義されたHTML 4.01のDTDを参照していることを示します。

もしDOCTYPE宣言に公開識別子が指定されていない場合、このプロパティは空の文字列を保持します。これは、特定の公開DTDを参照していない場合や、システム識別子(SYSTEM ID)のみが指定されている場合などに発生します。プログラマーは、このpublicIdプロパティを利用して、ドキュメントがどの公開DTDに準拠しているかをプログラム的に確認したり、ドキュメントのバリデーションや処理ロジックの分岐に役立てたりすることができます。

構文(syntax)

1<?php
2$dom = new DOMDocument();
3$dom->loadXML('<!DOCTYPE root PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><root/>');
4
5$documentType = $dom->doctype;
6
7$publicIdValue = $documentType->publicId;

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

DOMDocumentTypeオブジェクトが表すDOCTYPE宣言の公開識別子(Public Identifier)を文字列で返します。

関連コンテンツ

関連プログラミング言語