我是新的xml文件..我想使用php脚本获取xml文件的最新节点id value
并在我向此xml文件添加一个节点时进行计算..这样的事情...... {添加...
<id>2</id>
假设我有一个如下所示的xml文件:
<id>3</id>
你能指导我用php脚本解决这个问题的方法吗...感谢提前。
现在我找到了我的解决方案
<?xml version="1.0" encoding="UTF-8"?>
<books>
<book>
<id>1</id>
<name>Java</name>
</book>
<book>
<id>2</id>
<name>c++</name>
</book>
</books>
因此,在插入新节点时,您可以将增量值增加到$ id。
答案 0 :(得分:0)
检查此链接:
http://www.phpeveryday.com/articles/PHP-XML-Adding-XML-Nodes-P414.html
它有一个几乎正是你需要的例子 - 它甚至是一本书的例子。请注意,您需要自动增加id,而不是在示例中使用硬编码。
它真的很自我解释。
这是一本很好的参考资料:
http://pt1.php.net/manual/en/simplexmlelement.addchild.php
希望它有所帮助。 : - )
答案 1 :(得分:0)
使用simplexml
保持简单:
$xml = simplexml_load_string($x); // assuming XML in $x
$maxid = max(array_map('intval',$xml->xpath("//id")));
它的作用:
<id>
,xpath
个节点的数组
integer
,以便max()
可以完成其工作。现在使用<book>
添加新的$maxid + 1
:
$book = $xml->addChild('book');
$book->addChild('id',$maxid + 1);
$book->addChild('name','PHP');