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

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

作成日: 更新日:

基本的な使い方

containsメソッドは、DOMElementノードが別のノードの子孫ノードであるかどうかを判定するメソッドです。具体的には、メソッドを呼び出すDOMElementノード(親ノード候補)が、引数として与えられたノード(子ノード候補)の祖先ノードである場合にtrueを返します。言い換えると、引数のノードが、メソッドを呼び出すノードの子、孫、あるいはそれより深い階層の子孫である場合にtrueを返します。

このメソッドは、DOMツリー構造内でのノード間の親子関係を検証する際に非常に役立ちます。例えば、特定の要素が別の要素の内側に存在するかどうかを確認したい場合や、特定の要素が特定の要素の子孫要素として存在することを保証したい場合などに使用できます。

引数には、判定対象となるDOMNodeオブジェクトを指定します。この引数が、メソッドを呼び出すDOMElementノードの子孫であるかどうかを判定します。もし引数がDOMElementノードの子孫であれば、メソッドはtrueを返します。そうでなければ、falseを返します。

このメソッドは、名前空間を考慮しません。ノードが子孫であるかどうかのみを判定します。名前空間が異なる場合でも、DOMツリー構造上の親子関係があればtrueを返します。 containsメソッドは、DOMDocumentオブジェクト全体を検索するわけではありません。あくまでメソッドを呼び出すDOMElementノードを基準とした子孫関係のみを判定します。

構文(syntax)

1DOMElement::contains(DOMNode $other): bool

引数(parameters)

DOMNode|DOMNameSpaceNode|null $other

  • DOMNode|DOMNameSpaceNode|null $other: 比較対象となるノード。nullを指定するとfalseを返します。

戻り値(return)

bool

指定されたDOMElementが、この要素の子孫要素に含まれているかどうかを判定します。含まれている場合は true、含まれていない場合は false を返します。

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