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

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

作成日: 更新日:

基本的な使い方

attributesプロパティは、所属するDOMTextオブジェクトが持つ属性の集合を保持するプロパティです。一般的に、このattributesプロパティはDOMElementなどの要素ノードに対して使用され、その要素に定義されている属性(例えば、HTMLの<a href="...">におけるhref属性)をDOMNamedNodeMapオブジェクトとして取得するために利用されます。しかし、DOMTextクラスはXMLやHTMLドキュメント内で純粋なテキストコンテンツを表すノードであり、テキストノード自体は属性を持つことができません。属性は要素ノードに付与される構造的な情報だからです。したがって、DOMTextオブジェクトのattributesプロパティにアクセスした場合、どのような状況であっても常にnullが返されます。これは、テキストノードが属性を持たないというDOMの基本的な設計に基づいています。もし、要素の属性情報を扱いたい場合は、DOMElementオブジェクトに対してこのプロパティを使用する必要があります。このプロパティは、テキストノードが属性を持たないという特性を理解する上で重要な情報を提供します。

構文(syntax)

1<?php
2$dom = new DOMDocument();
3$textNode = $dom->createTextNode("これはDOMTextノードです。");
4$attributes = $textNode->attributes;
5?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

?DOMNamedNodeMap

DOMText オブジェクトが持つ属性のコレクション(DOMNamedNodeMap)を返します。要素ノードにのみ属性が存在するため、通常DOMTextノードでは null が返されます。

関連コンテンツ

関連プログラミング言語