• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php 修改、增加xml结点属性的实现代码_php技巧

php 搞代码 3年前 (2022-01-26) 40次浏览 已收录 0个评论

php 修改 增加xml结点属性的代码,供大家学习参考。
php修改xml结点属性,增加xml结点属性的代码,有需要的朋友,参考下。

1、xml文件

<?xml version="1.0" encoding="UTF-8" ?><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>

2、php代码

<?<BR>$dom=new DOMDocument('1.0');<BR>$dom->load('x.xml');<BR>$em=$dom->getElementsByTagName('emotions');<BR>$em=$em->item(0);<BR>$items=$em->getElementsByTagName('item');<BR>foreach($items as $a){<BR>foreach($a->attributes as $b){<BR>if($b->nodeValue=='Birthday'){<BR>$a->setAttribute('name','nBirthday');<BR>}<BR>}<BR>}<BR>$t=$dom->createElement('item');<BR>$t->setAttribute('name','x');<BR>$t->setAttribute('src','www.baidu<a>本2文来*源gao($daima.com搞@代@#码(网</a><strong>搞gaodaima代码</strong>.com');<BR>$t->setAttribute('duration','duration');<BR>$em->appendChild($t);<BR>$dom->save('x.xml');<BR>?><BR>

PHP解析XML文档属性并编辑

<?php <BR>//读取xml <BR> $dom=new DOMDocument('1.0'); <BR>$dom->load('data.xml'); <BR>$em=$dom->getElementsByTagName('videos');//最外层节点 <BR>$em=$em->item(0); <BR>$items=$em->getElementsByTagName('video');//节点 <BR>//如果不用读取直接添加的话把下面这一段去掉即可 <BR>foreach($items as $a){ <BR>foreach($a->attributes as $b){//$b->nodeValue;节点属性的值$b->nodeName;节点属性的名称 <BR> echo $b->nodeName; <BR> echo ":"; <BR> echo $b->nodeValue; <BR> echo "<br />"; <BR>} <BR>} <BR>//下面是往xml写入一行新的 <BR>$t=$dom->createElement('video');//<video <BR>$t->setAttribute('title','1');//<video name="data" <BR>$t->setAttribute('src','2');//<video name="data" src="2" <BR>$t->setAttribute('img','1');//<video name="data" img="1" <BR>$em->appendChild($t);//<video /> <BR>$dom->save('data.xml'); <BR>?>  <BR> 


当时的xml文档:

<?xml version="1.0"?> <BR> <BR> <video title="1" /> <BR> <video title="2" /> <BR> <video title="3" /> <BR> <video title="d" src="2" /> <BR> <BR>


//下面这一个文件是后改的可以修改xml

<?php <BR>$doc = new DOMDocument(); <BR>$doc->load('data.xml'); <br><br>//查找 videos 节点 <BR>$root = $doc->getElementsByTagName('videos'); <br><br>//第一个 videos 节点 <BR>$root = $root->item(0); <br><br>//查找 videos 节点下的 video 节点 <BR>$userid = $root->getElementsByTagName('video'); <br><br>//遍历所有 video 节点 <BR>foreach ($userid as $rootdata) <BR>{ <BR>//遍历每一个 video 节点所有属性 <BR>foreach ($rootdata->attributes as $attrib) <BR>{ <BR>$attribName = $attrib->nodeName;   //nodeName为属性名称 <BR>$attribValue = $attrib->nodeValue; //nodeValue为属性内容 <br><br>//查找属性名称为ip的节点内容 <BR>if ($attribName =='img') <BR>{ <BR>//查找属性内容为ip的节点内容 <BR>if ($attribValue =='1') <BR>{ <BR>//将属性为img,img内容为1的修改为image; <BR>$rootdata->setAttribute('img','image'); <BR>$doc->save('data.xml'); <BR>} <BR>} <BR>} <BR>}  <BR>?><BR>

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php 修改、增加xml结点属性的实现代码_php技巧
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址