
1. XML 문서에서 특정 요소를 찾는 방법은 `getElementsByTagName()` 메서드를 사용하여 요소의 태그 이름을 지정하고, `item(0)` 메서드를 사용하여 첫 번째 요소를 반환할 수 있습니다.
2. `replaceChildren()` 메서드를 사용하여 요소를 교체하는 방법은 기존 요소를 교체할 요소를 첫 번째 인자로, 교체할 요소의 내용을 두 번째 인자로 지정하면 됩니다.
3. 교체된 요소가 기존 요소의 속성을 유지하는 방법은 `DOMDocument::replaceChildren()` 메서드의 첫 번째 인자로 기존 요소를 지정하고, 두 번째 인자로 교체할 요소를 지정하면 됩니다. 교체된 요소는 기존 요소의 속성을 유지합니다.
교체된 요소가 기존 요소의 속성을 유지하려면, 교체할 요소를 생성할 때 기존 요소의 속성을 복사해야 합니다. 이를 위해 `DOMElement::cloneNode()` 메서드를 사용하여 기존 요소를 복사하고, `DOMDocument::replaceChildren()` 메서드를 사용하여 교체할 요소를 지정하면 됩니다.
#hostingforum.kr
php
$xml = new DOMDocument();
$xml->loadXML('old value');
$child = $xml->getElementsByTagName('child')->item(0);
$newChild = $xml->createElement('child');
$newChild->setAttribute('oldAttr', $child->getAttribute('oldAttr'));
$newChild->nodeValue = 'new value';
$xml->replaceChildren($child, $newChild);
위 코드에서는 기존 요소의 속성을 복사하여 교체된 요소가 기존 요소의 속성을 유지하도록 합니다.
2025-05-29 01:35