【PHP8.x】itemメソッドの使い方

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

作成日: 更新日:

基本的な使い方

itemメソッドは、DOMNamedNodeMapクラスに属するメソッドです。DOMNamedNodeMapクラスは、HTMLやXMLドキュメント内の要素が持つ属性の集合のように、名前(キー)でアクセスできるノードのコレクション(集合)を表します。

このitemメソッドは、DOMNamedNodeMapが保持するノードのコレクションから、指定されたインデックス(添字)位置にあるノードを取得するために使用されます。インデックスは0から始まり、コレクションの最初のノードが0、次が1というように続きます。例えば、ある要素の属性が複数ある場合に、その属性リストの中から特定の順番にある属性ノードにアクセスしたいときに便利です。

itemメソッドは、引数として整数型のインデックスを受け取ります。指定したインデックスにノードが存在すれば、その位置にあるDOMNodeオブジェクトを返します。多くの場合、返されるノードはDOMAttrオブジェクト、つまり属性ノードになります。もし指定されたインデックスがコレクションの範囲外である場合、このメソッドはnullを返します。これにより、存在しない位置のノードにアクセスしようとした際にエラーを適切に処理できます。

このメソッドを使うことで、名前が分からなくてもインデックスに基づいてノードに順次アクセスし、その内容を読み取ったり操作したりすることが可能になり、動的なドキュメント処理において重要な役割を果たします。

構文(syntax)

1<?php
2$dom = new DOMDocument();
3$dom->loadXML('<example attribute1="value1" attribute2="value2"></example>');
4$element = $dom->documentElement;
5
6// DOMElement::attributes プロパティから DOMNamedNodeMap のインスタンスを取得
7$attributeMap = $element->attributes;
8
9// DOMNamedNodeMap::item メソッドを使用して、指定されたインデックスのノードを取得する構文
10$node = $attributeMap->item(0);
11?>

引数(parameters)

int $index

  • int $index: 取得したいノードのインデックス(0から始まる整数)

戻り値(return)

DOMNode|null

指定されたインデックスに対応する DOMNode オブジェクト、または要素が存在しない場合は null を返します。

【PHP8.x】itemメソッドの使い方 | いっしー@Webエンジニア