用php从xml中删除元素

时间:2012-04-05 01:37:27

标签: php xml post

我正在构建一个iphone应用程序,它允许人们通过向php脚本发送POST来更新xml文件。在将帖子发送到php脚本并更新xml之后,我希望用户能够取消对XML的更新。如何从XML中只删除一个元素并将XML文件重写到服务器上的相同位置(换句话说,只有一个元素现在消失了,其他一切都是相同的)?要添加元素,我使用的代码如下所示:

$xmlUrl = "Bars.xml"; // XML 
$xmlStr = file_get_contents($xmlUrl);
$xml = new SimpleXMLElement($xmlStr);
$bartenders = $xml->xpath('//Bartenders');
$new_bartender = $bartenders[$newBar_ID]->addChild('Bartender');
$new_bartender->fname = $newfname;
$new_bartender->lname = $newlname;
$new_bartender->imageURL = $newimageURL;
$new_bartender->shift = $newShift;
print_r($bartenders);

$xml->asXML('Bars.xml');

当我将POST方法发送到php脚本时,我有元素的属性来识别要删除的内容。 谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

THIS可能重复。

从您的代码段我不知道给出了什么数据。你可以尝试做任何一次

unset($bartenders[$newBar_ID]);

$bartenders->removeChild($bartenders[$newBar_ID]);

我猜...我根据谷歌出现的代码片段写了这些,从未测试过它们。如果有效,请随时给我反馈。