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

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

作成日: 更新日:

基本的な使い方

containsメソッドは、特定のDOMノードが引数として指定された別のDOMノードを子孫として含んでいるかどうかを判定するメソッドです。このメソッドは、DOMCdataSectionクラスのインスタンスに対して呼び出すことができます。DOMCdataSectionは、XMLドキュメント内で特別な意味を持つCDATAセクションのデータを表現するノードであり、内部のテキストデータをそのままの形で扱います。

具体的に、DOMCdataSectionオブジェクトに対してcontainsメソッドを使用する場合、そのCDATAセクションノードが、引数に渡されたノードをその子孫ノードとして持っているかをチェックします。しかしながら、DOMCdataSectionノードは通常、テキストコンテンツのみを保持する「リーフノード」(末端のノード)であり、他のDOMノードを子ノードとして持つことはありません。したがって、引数として渡されたノードが、このcontainsメソッドを呼び出したDOMCdataSectionノード自身である場合を除き、このメソッドは基本的にfalseを返します。

このメソッドの戻り値は真偽値であり、trueであれば指定されたノードを子孫として含んでいることを示し、falseであれば含んでいないことを示します。WebページやXMLドキュメントの構造をプログラムで分析し、特定の要素が別の要素の内部に存在するかどうかを効率的に判断したい場合に役立ちます。DOM(Document Object Model)を操作する上で、ノード間の包含関係をプログラム的に確認するための基本的な機能の一つとして理解してください。

構文(syntax)

1<?php
2
3$document = new DOMDocument();
4// DOMCdataSection のインスタンスを作成する例
5$cdataSection = $document->createCDATASection("example data for testing");
6
7// contains メソッドの呼び出し例
8// このメソッドは、DOMCdataSection の内容が特定の文字列を含んでいるかを確認すると仮定します。
9$searchString = "testing";
10$doesContain = $cdataSection->contains($searchString);
11
12// $doesContain は bool 値を返すと仮定します。
13if ($doesContain) {
14    // 含まれている場合の処理
15    echo "CData section contains '{$searchString}'.\n";
16} else {
17    // 含まれていない場合の処理
18    echo "CData section does not contain '{$searchString}'.\n";
19}
20
21?>

引数(parameters)

DOMNode $other

  • DOMNode $other: 比較対象となるDOMNodeオブジェクト

戻り値(return)

戻り値なし

戻り値はありません

関連コンテンツ

関連プログラミング言語