一个简单的CRUD节点程序和xml文件的节点值

San*_*kha 26 php xml

我决定在xml文件中保存设置,因为字段只有一个值.

我的XML文件就像

<?xml version="1.0" encoding="UTF-8"?>
<setting>
    <setting1>setting1 value</setting1>
    <setting2>setting2 value</setting2> 
    <setting3>setting3 value</setting3> 
    ....
    ....
    ....
</setting>
Run Code Online (Sandbox Code Playgroud)

谁能建议我一个简单的PHP脚本来读取,编辑,添加和删除节点和节点值?

Gor*_*don 24

如果您的XML非常简单,您可以使用SimpleXML它来进行CRUD.SimpleXml将XML解析为SimpleXmlElements的树结构.简而言之,您可以像这样使用它:

// CREATE
$config = new SimpleXmlElement('<settings/>');
$config->setting1 = 'setting1 value';         
$config->saveXML('config.xml');               

// READ
$config = new SimpleXmlElement('config.xml');
echo $config->setting1;
echo $config->asXml();

// UPDATE
$config->setting1 = 'new value';
$config->setting2 = 'setting2 value';
echo $config->asXml();

// DELETE
unset($config->setting1);
$config->setting2 = NULL;
echo $config->asXML();
unlink('config.xml');
Run Code Online (Sandbox Code Playgroud)

有关更多用法示例API说明,请参阅PHP手册.

在旁注中,如果你真的只有键/值对,你也可以使用一个普通的旧PHP数组来存储它们,或者使用像DBA这样的键/值存储,甚至是APC和使用长ttl的memcached.