
DOMDocumentFragment::append 메서드는 노드를 복사하여 추가합니다.
원본 노드는 삭제되지 않습니다. DOMDocumentFragment::append 메서드는 노드를 복사하여 추가하기 때문에 원본 노드는 그대로 유지됩니다.
append 메서드는 노드의 순서를 고려하지 않습니다. DOMDocumentFragment::append 메서드는 노드를 추가할 때 노드의 순서를 고려하지 않습니다. 따라서 노드의 순서가 변경될 수 있습니다.
DOMDocumentFragment::append 메서드를 사용할 때는 주의해야 합니다. 노드의 순서가 변경될 수 있기 때문에 노드의 순서를 고려해야 합니다.
예를 들어, 다음 코드를 살펴보겠습니다.
#hostingforum.kr
php
$doc = new DOMDocument();
$fragment = $doc->createDocumentFragment();
$node1 = $doc->createElement('node1');
$node2 = $doc->createElement('node2');
$fragment->appendChild($node1);
$fragment->appendChild($node2);
echo $fragment->nodeValue; // node2node1
$fragment->append($node1);
echo $fragment->nodeValue; // node1node2
위 코드에서, 노드의 순서가 변경됩니다. 노드1이 노드2 뒤에 추가되었습니다.
따라서, 노드의 순서를 고려해야 합니다.
#hostingforum.kr
php
$doc = new DOMDocument();
$fragment = $doc->createDocumentFragment();
$node1 = $doc->createElement('node1');
$node2 = $doc->createElement('node2');
$fragment->appendChild($node1);
$fragment->appendChild($node2);
echo $fragment->nodeValue; // node2node1
$fragment->insertBefore($node1, $fragment->firstChild);
echo $fragment->nodeValue; // node1node2
위 코드에서, 노드의 순서가 변경되지 않습니다. 노드1이 노드2 앞에 추가되었습니다.
따라서, 노드의 순서를 고려해야 합니다.
결론적으로, DOMDocumentFragment::append 메서드는 노드를 복사하여 추가하고, 원본 노드는 삭제되지 않습니다. 또한, 노드의 순서를 고려하지 않습니다. 따라서, 노드의 순서를 고려해야 합니다.
2025-07-31 00:37