我有这个xml示例
<items>
<item>
<id>k1</id>
<price>456</price>
</item>
<item>
<id>k2</id>
<price>609</price>
</item>
</items>
php code
$xml = simplexml_load_file(address of xml file);
foreach ($xml->item as $item){
if($item->id == 'k2') {
item->price = 800;
}
}
如果我想用simpleXML更改第二项的值我该怎么做?我知道我可以读取这个$ val = item-&gt;价格并将值保存到变量中;但如果我想用这个简单的代码项改变价值 - &gt; price = 800;它不起作用。为什么会这样?这是一件简单的事情,但仍然很难......谢谢
答案 0 :(得分:0)
使用xpath
选择您想要的<item>
并进行更新:
$xml = simplexml_load_string($x); // assume XML in $x
$result = $xml->xpath("/items/item[id = 'k2']");
$result[0]->price = 800;
echo $xml->asXML();
看到它有效:https://eval.in/88021