我有以下xml:
<?xml version="1.0" encoding="utf-8"?>
<server>
<gcm regId="APA91-yySYdx_Ydvkl2pQNB54yDpJRq4SnWvJCpsaCm6hT3LlXqP1S-3uTiXlXwylPKmrFSZbsA" email="mozi"/>
<conversation ip="mozi1" email="mozi">
<chat>abc</chat>
</conversation>
<conversation ip="mozi1" email="mozi">
<chat>abc</chat>
</conversation>
<conversation ip="mozi1" email="mozi">
<chat>abc</chat>
</conversation>
<conversation ip="mozi1" email="mozi">
<chat>abc</chat>
</conversation>
<conversation ip="mozi1" email="mozi">
<chat>abc</chat>
</conversation>
</server>
我想删除所有conversation
标签email=mozi
。
我正在从以下代码中执行此操作。
public function DeleteConversation()
{
$conv=$this->xmlDom->getElementsByTagName("conversation");
foreach ($conv as $conversation)
{
if ($conversation->getAttribute('email') == $this->adminEmail)
{
$this->xmlDom->documentElement->removeChild($conversation);
}
}
$this->SaveChanges();
}
现在,当我运行脚本并调用此函数时。循环只工作 3 次。即它只删除3 records
。当我下次运行脚本时,它会删除一条记录,下一次删除一条记录。所以这就是所有五条记录都被删除的方式。为什么会这样?
我希望它们一次全部删除。请帮忙。