у меня есть проблема с simpleXml и добавлением новых объектов. Это - мой xml:
<?xml version="1.0" encoding="utf-8"?>
<root>
<items>
<item>abc</item>
<item>def</item>
<item>ghi</item>
</items>
</root>
Я использую этот php код:
$xml = simplexml_load_file("myxml.xml");
$sxe = new SimpleXMLElement($xml->asXML());
$newItem = $sxe->addChild("items");
$newItem->addChild("item", $newValue);
$sxe->asXML("myxml.xml");
Это - результат:
<?xml version="1.0" encoding="utf-8"?>
<root>
<items>
<item>abc</item>
<item>def</item>
<item>ghi</item>
</items>
<items>
<item>jkl</item>
</items>
</root>
Это создает меня новый узел объектов, но я хочу уже, добавляет объект к тому же существующий узел объектов.
тогда не следует создавать новые элементы node:
$xml = simplexml_load_file("myxml.xml");
$sxe = new SimpleXMLElement($xml->asXML());
$itemsNode = $sxe->items[0];
$itemsNode->addChild("item", $newValue);
$sxe->asXML("myxml.xml");
Вы пробовали сделать следующее
$newItem->root->items[0]->addChild("item","Test");
или
$newItem->root->items->addChild("item","Test");