Вот образец моего xml. Скажем так:
<Elements>
<Element>
<list>123</list>
</Element>
<Element>
<list>456</list>
</Element>
</Elements>
у меня есть функция, которая получает элемент-> элемент (0);
затем я добавляю его к элементу-> item (1);
и мой добавочный код выглядит так:
$elements=$xml->getElementsBytagName('Element');
$element1=$elements->item(0);
$element2=$elements->item(1);
$element2->appenchild($element1);
но содержимое элемента 1 удалено. но добавлено в element2.
Есть ли способ, которым содержимое элемента 1 остается там и добавляет его к элементу 2? я тоже попытался добавить его к элементу 1, но на самом деле это не тот путь, которым должен идти мой код. пожалуйста помоги. 🙁 Спасибо
cloneNode — это путь. Пример:
element[1].appendChild(element[0].childNodes[0].cloneNode(true));
Выше будет взять первый дочерний элемент первого элемента в nodeList элемента и добавить его как дочерний элемент ко второму элементу в nodeList элемента, не удаляя его из исходного местоположения.
Других решений пока нет …