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

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

作成日: 更新日:

基本的な使い方

querySelectorAllメソッドは、PHPのDom\HTMLDocumentクラスに属し、HTMLドキュメント内で指定されたCSSセレクターに一致する全ての要素を取得するために使用されるメソッドです。このメソッドは、Webページの内容を解析したり、特定のHTML要素をプログラムから操作したりする際に非常に強力なツールとなります。

具体的には、引数としてCSSセレクターの文字列を受け取ります。例えば、'div.item'を指定すれば、class="item"を持つ全ての<div>要素を検索しますし、'#main-content p'を指定すれば、id="main-content"を持つ要素内の全ての<p>要素を検索するといった形で、柔軟な要素の指定が可能です。

検索の結果、一致する要素が見つかった場合、それらの要素をDom\NodeListオブジェクトとして返します。このDom\NodeListは、取得した要素を順次処理するためのコレクションとして機能します。もし指定したCSSセレクターに一致する要素が一つもなかった場合でも、エラーになることなく空のDom\NodeListオブジェクトが返されます。

このメソッドは、HTMLドキュメントの構造を理解し、その中から特定の情報を効率的に抽出するデータ解析やWebスクレイピングなどの用途において、システムエンジニアが頻繁に利用する基本的な機能の一つです。

構文(syntax)

1<?php
2
3// Dom\HTMLDocument クラスのインスタンス $document が存在し、
4// HTMLドキュメントがロード済みであることを前提とします。
5
6$selector = 'div.main > p.item'; // 検索対象となるCSSセレクタ文字列
7$nodeList = $document->querySelectorAll($selector); // querySelectorAll メソッドの呼び出し
8
9?>

引数(parameters)

string $selectors

  • string $selectors: 検索対象となるCSSセレクター文字列

戻り値(return)

Dom\NodeList

指定されたCSSセレクターに一致するすべてのDOMノードのリストを返します。

関連コンテンツ