【PHP8.x】cloneNodeメソッドの使い方
cloneNodeメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
cloneNodeメソッドは、呼び出し元のDOMDocumentFragmentオブジェクトの複製(クローン)を作成するメソッドです。このメソッドを使用することで、既存の文書断片をコピーし、文書内の別の場所で再利用することが可能になります。メソッドにはオプションで論理値の引数 $deep を指定でき、これによってコピーの範囲を制御します。引数 $deep にtrueを指定して呼び出すと、ディープコピーが実行されます。これは、DOMDocumentFragment自身だけでなく、その中に含まれるすべての子ノード群も再帰的に複製し、構造全体を完全にコピーすることを意味します。一方、$deepにfalseを指定した場合や引数を省略した場合は、シャローコピーが実行されます。この場合、DOMDocumentFragmentの器となるノード自体は複製されますが、その子ノードは一切コピーされず、結果として空の文書断片が生成されます。メソッドの実行に成功すると、新しく作成されたDOMDocumentFragmentオブジェクトが返され、失敗した場合にはfalseが返されます。
構文(syntax)
1<?php 2$clonedNode = $domDocumentFragment->cloneNode(true);
引数(parameters)
bool $deep = false
- bool $deep = false: trueを指定すると、ノードとそのすべての子孫ノードを深くコピーします。false(デフォルト)を指定すると、ノード自体のみをコピーします。
戻り値(return)
DOMNode|false
DOMDocumentFragment オブジェクトのコピーを DOMNode として返します。コピーに失敗した場合は false を返します。