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

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

作成日: 更新日:

基本的な使い方

childNodesプロパティはDom\XMLDocumentクラスにおいて、XMLドキュメントの直下にある全ての子ノードのリストを保持するプロパティです。Dom\XMLDocumentは、PHPにおいてXMLドキュメント全体をオブジェクトとして表現し、プログラムからその内容を操作するための基盤となるクラスです。

このchildNodesプロパティにアクセスすると、XMLドキュメントの最上位レベルに存在する子ノード群が、Dom\NodeListオブジェクトとして取得されます。ここでいう「子ノード」とは、XMLドキュメントを構成する個々の部品のことで、具体的にはXML宣言の後に続くルート要素、コメント、処理命令などが含まれます。

Dom\NodeListは、取得した子ノードを順序付けてリスト形式で格納しており、これを利用することで、foreachループなどを用いて個々の子ノードに簡単にアクセスし、それぞれのノードのタイプや値、属性といった情報を取得したり、さらにその子ノードを探索したりすることが可能になります。このリストはドキュメントの内容に同期しており、元のXMLドキュメントが変更されると、その変更が自動的にリストにも反映される特性を持っています。

childNodesプロパティは、XMLドキュメントの構造を上から順に探索したり、特定の要素や情報を見つけ出したり、あるいはドキュメントの特定の部分を操作したりする際に、非常に重要な役割を果たすプロパティです。XMLデータをプログラムで扱う上で、ドキュメントの全体像を把握し、必要な部分へアプローチするための入り口として利用されます。

構文(syntax)

1<?php
2
3// Dom\XMLDocument オブジェクトを作成し、XMLをロード
4$document = new Dom\XMLDocument();
5$document->loadXML('<root><item id="1">First item</item><item id="2">Second item</item></root>');
6
7// Dom\XMLDocument オブジェクトの childNodes プロパティにアクセスし、子ノードのリストを取得する構文
8$children = $document->childNodes;

引数(parameters)

引数なし

引数はありません

戻り値(return)

Dom\NodeList

Dom\XMLDocument オブジェクトの直下にある子ノードのコレクションを Dom\NodeList オブジェクトとして取得します。

関連コンテンツ

【PHP8.x】childNodesプロパティの使い方 | いっしー@Webエンジニア