PHP-php中xml怎么到指定位子添加子节点
具体如下
<b >
<c>test</c>
</b>
我要在b节点里面添加一个子节点
比如说加一个d节点,要实现成
<b >
<c>test</c>
<d>test</d>
</b>
求帮忙解决
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
具体如下
<b >
<c>test</c>
</b>
我要在b节点里面添加一个子节点
比如说加一个d节点,要实现成
<b >
<c>test</c>
<d>test</d>
</b>
求帮忙解决
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
处理XML文档的类库网上有很多,推荐一款SimpleXML。具体我没有实践过,但应该可以解决你的问题。
这里有个简单介绍http://www.jb51.net/article/23912.htm
123.xml文件如下:
<?xml version="1.0" encoding="utf-8"?>
<b>
<c>test</c>
</b>
php代码如下:
<?php
$xml = new DOMDocument();//创建DOM对象
$xml->load('123.xml');//加载xml文件
$b_node = $xml->getElementsByTagName('b');//获取所有名字为b的元素节点数组
$d_node = $xml->createElement('d');//创建d元素节点
$d_node_content = $xml->createTextNode('test');//创建文本元素节点
$d_node-> appendChild($d_node_content);//在d节点元素中添加文本元素节点
$b_node->item(0)->appendChild($d_node);//在所有名字为b的元素节点数组中的第一个元素节点中添加d元素节点
$xml->save('123.xml');//保存xml文件
注意:
getElementsByTagName('b')函数获取的结果是是你xml文件中所有名为b的元素节点的集合,因此你在添加元素节点的时候,要注意你是想给所有的节点都添加还是只想给个别的节点添加。