Как удалить определенный узел XML с помощью DOMDocument, когда существует несколько дочерних узлов? - PullRequest
0 голосов
/ 10 ноября 2011

Стандартный способ удаления узла с использованием PHP DOMDocument:

$dom = dom_import_simplexml($node);
$dom->parentNode->removeChild($dom);

Проблема возникает при наличии нескольких дочерних узлов, так как этот метод просто удалит первый дочерний узел. Например, XML, сгенерированный API Контактов Google, выглядит в основном так:

<phoneNumber>
    <first number node>
    <second number node>
    <etc...>
</phoneNumber>

Итак, вопрос в том, как я могу удалить определенный узел в стеке?

1 Ответ

0 голосов
/ 11 ноября 2011

Поскольку SimpleXML является объектно-ориентированным, просто используйте

unset($xml->node)

для удаления, затем

$xml->saveXML();

для сохранения.

...