Я никогда не работал с XML с использованием PHP, и я не могу обойти эту легкую (я думаю) проблему.
Вот мой XML:
<StockFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Stock>
<Prod>M</Prod>
</Stock>
<Stock>
<Prod>Y</Prod>
</Stock>
<Stock>
<Prod>N</Prod>
</Stock>
</StockFile>
Чего я хочу добиться:
<StockFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Stock>
<Prod>M</Prod>
<price>Example</price>
</Stock>
<Stock>
<Prod>Y</Prod>
<price>Example</price>
</Stock>
<Stock>
<Prod>N</Prod>
<price>Example</price>
</Stock>
</StockFile>
И вот мой код:
private static function appendPrice()
{
$xml = simplexml_load_file("file.xml");
foreach ($xml->Stock as $stock)
{
echo $stock->Prod;
$stock->addChild('price', 'Example');
}
}
Несмотря на то, что это простой вопрос, я не могу обойти его, я не получаю никакого ответа, эхо в порядке, но ребенок не добавлен. Что я делаю неправильно?
Вы не сохраняете файл после изменений:
private static function appendPrice()
{
$xml = simplexml_load_file("file.xml");
foreach ($xml->Stock as $stock)
{
echo $stock->Prod;
$stock->addChild('price', 'Example');
}
$xml->saveXML('file.xml');
}
Других решений пока нет …