标签:des style class blog code java
PHP XML操作类DOMDocument属性及方法
注意大小写一定不能弄错.
属性:
方法:
1 <?php 2 //读取xml 3 $dom=new DOMDocument(‘1.0‘); 4 $dom->load(‘data.xml‘); 5 $em=$dom->getElementsByTagName(‘videos‘);//最外层节点 6 $em=$em->item(0); 7 $items=$em->getElementsByTagName(‘video‘);//节点 8 //如果不用读取直接添加的话把下面这一段去掉即可 9 foreach($items as $a){ 10 foreach($a->attributes as $b){//$b->nodeValue;节点属性的值$b->nodeName;节点属性的名称 11 echo $b->nodeName; 12 echo ":"; 13 echo $b->nodeValue; 14 echo "<br/>"; 15 } 16 } 17 //下面是往xml写入一行新的 18 $t=$dom->createElement(‘video‘);//<video 19 $t->setAttribute(‘title‘,‘1‘);//<video name="data" 20 $t->setAttribute(‘src‘,‘2‘);//<video name="data" src="2" 21 $t->setAttribute(‘img‘,‘1‘);//<video name="data" img="1" 22 $em->appendChild($t);//<video name="data" img="1"/> 23 $dom->save(‘data.xml‘); 24 ?> 25 26 当时的xml文档: 27 28 <?xml version="1.0"?> 29 <videos> 30 <video img="a" url="1" title="1" nickname="1" tag="1" vid="1" star="1"/> 31 <video img="b" url="2" title="2" nickname="2" tag="2" vid="2" star="2"/> 32 <video img="c" url="3" title="3" nickname="3" tag="3" vid="3" star="3"/> 33 <video title="d" src="2" img="1"/> 34 </videos> 35 //下面这一个文件是后改的可以修改xml 36 37 <?php 38 $doc = new DOMDocument(); 39 $doc->load(‘data.xml‘); 40 41 //查找 videos 节点 42 $root = $doc->getElementsByTagName(‘videos‘); 43 44 //第一个 videos 节点 45 $root = $root->item(0); 46 47 //查找 videos 节点下的 video 节点 48 $userid = $root->getElementsByTagName(‘video‘); 49 50 //遍历所有 video 节点 51 foreach ($userid as $rootdata) 52 { 53 //遍历每一个 video 节点所有属性 54 foreach ($rootdata->attributes as $attrib) 55 { 56 $attribName = $attrib->nodeName; //nodeName为属性名称 57 $attribValue = $attrib->nodeValue; //nodeValue为属性内容 58 59 //查找属性名称为ip的节点内容 60 if ($attribName ==‘img‘) 61 { 62 //查找属性内容为ip的节点内容 63 if ($attribValue ==‘1‘) 64 { 65 //将属性为img,img内容为1的修改为image; 66 $rootdata->setAttribute(‘img‘,‘image‘); 67 $doc->save(‘data.xml‘); 68 } 69 } 70 } 71 } 72 73 ?>
=========================================================================
1 <? 2 $xmlDoc = new DOMDocument(); 3 $xmlDoc->load("http://localhost/xml/xml.php"); 4 $x=$xmlDoc->getElementsByTagName(‘name‘); 5 for ($i=0; $i<=$x->length-1; $i++){ 6 if(strpos($x->item($i)->nodeValue,"fang")!==false){ //判断节点内容是否存在字符“fang”,可用于搜索 7 echo $x->item($i)->parentNode->childNodes->item(1)->nodeValue; 8 } 9 } 10 ?>
标签:des style class blog code java
原文地址:http://www.cnblogs.com/syphper/p/3782095.html