PHP将节点添加到现有xml文件并保存

Dav*_*vid 5 php xml

是否可以使用php XMLWriter将新节点插入现有的xml文件,然后保存文件?每次我想要更新xml文件时,实际创建一个新文件对我来说会更有益.

Ant*_*ony 8

我会simplexml改用.我要走出困境并假设如果你有XML编写器,你也有simplexml.

让我们看一下,要添加一个节点,让我们假设一个非常简单的(得到它?)xml文件:

 <desserts>
     <cakes>
        <cake>chocolate</cake>
        <cake>birthday</cake>
     </cakes>
     <pies>
        <pie>apple</pie>
        <pie>lemon</pie>
     </pies>
</desserts>
Run Code Online (Sandbox Code Playgroud)

如果这是在一个文件中,并且你想添加一个新的馅饼,你会这样做:

$desserts = new SimpleXMLElement;

$desserts->loadfile("desserts.xml");

$desserts->pies->addChild("pie","pecan");
Run Code Online (Sandbox Code Playgroud)

当然,它可能比这更复杂.但是一旦掌握了它,它就非常有用.