一个简单的程序来CRUD节点和xml文件的节点值
我决定将设置保存在xml文件中,因为字段只有一个值。
我的XML文件就像
<?xml version="1.0" encoding="UTF-8"?>
<setting>
<setting1>setting1 value</setting1>
<setting2>setting2 value</setting2>
<setting3>setting3 value</setting3>
....
....
....
</setting>
任何人都可以建议我一个简单的PHP脚本来读取,编辑,添加和删除节点和节点值?
如果你的XML真的很简单,你可以使用SimpleXML
来修改它。 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');
有关更多用法示例和API说明,请参阅PHP手册。
在旁注中,如果你真的只有键/值对,你也可以使用一个普通的旧PHP数组来存储它们或者像DBA或者APC和memcached这样的键/值存储器。
您可以使用PHP XQuery扩展来完成这项工作:
let $data := <setting>
<setting1>setting1 value</setting1>
<setting2>setting2 value</setting2>
<setting3>setting3 value</setting3>
</setting>
return {
(: Update :)
replace value of node $data/setting1/text() with "Hello World";
(: Delete :)
delete node $data/setting2;
(: Read :)
$data
}
你可以试试上面的例子http://www.zorba-xquery.com/html/demo#BJ2a2bNxJc8JVZAl0qyjAelwN9s=
有关如何安装XQuery PHP扩展的说明,请访问http://www.zorba-xquery.com/html/entry/2011/12/27/PHP_Meets_XQuery
链接地址: http://www.djcxy.com/p/5071.html上一篇: A simple program to CRUD node and node values of xml file