当前位置:首页 > PHP教程 > php应用 > 列表

php xml节点 修改,增加,编辑,删除代码

发布:smiling 来源: PHP粉丝网  添加日期:2014-08-20 15:12:52 浏览: 评论:0 

本教程是利用了php domdocument函数来对xml节点 修改,增加,编辑,删除代码下面每个操作节点都是英文说明,如果你能写程序我想这些英文都能看得懂的.

php xml节点 修改,增加,编辑,删除代码如下:

  1. function loadfile($file){ 
  2.   $newfile=new domdocument(); 
  3.   $newfile->validateonparse=true; 
  4.   $newfile->load($file); 
  5.    
  6.   return $newfile
  7. function add($file$parentname$children){ //增加xml节点 
  8.   $xml=loadfile($file); 
  9.    
  10.   $id=uniqid('m' . rand(1,5), true); 
  11.   $parentnode=$xml->createelement($parentname); 
  12.   $parentnode->setattribute('mid'$id); 
  13.   foreach($children as $child => $value){ 
  14.     $childnode=$xml->createelement($child$value); 
  15.     $parentnode->appendchild($childnode); 
  16.   } 
  17.   $xml->documentelement->appendchild($parentnode); 
  18.   $xml->save($file); 
  19.   return $id
  20. function delete($file$id){//删除xml 节点 
  21.   $xml=loadfile($file); 
  22.   $ids=explode(","$id); 
  23.   foreach ($ids as $oldnodeid){ 
  24.     $oldnode=$xml->getelementbyid($oldnodeid); 
  25.     $parentnode=$oldnode->parentnode; 
  26.     $parentnode->removechild($oldnode); 
  27.   } 
  28.   $xml->save($file); 
  29. function edit($file$id$child$value){//编辑xml 节点 
  30.   $xml=loadfile($file); 
  31.    
  32.   $parentnode=$xml->getelementbyid($id); 
  33.   $childnode=$parentnode->childnodes->item($child); 
  34.   $textnode=$childnode->childnodes->item(0); 
  35.   $textnode->nodevalue=$value
  36.    
  37.   $xml->save($file); 
  38. function move($file$moveid$refid=null){ //移动xml节点 
  39.   $xml=loadfile($file); 
  40.    
  41.   $movenode=$xml->getelementbyid($moveid); 
  42.   $parentnode=$movenode->parentnode; 
  43.   if ($refid!=null) { 
  44.     $refnode=$xml->getelementbyid($refid); 
  45.     if(!$parentnode->issamenode($refnode->parentnode)) return false; 
  46.   } 
  47.   else $refnode=null; 
  48.   $movenode=$parentnode->removechild($movenode); 
  49.   $parentnode->insertbefore($movenode,$refnode); 
  50.   //开源代码phpfensi.com 
  51.   $xml->save($file); 

Tags: php xml节点修改 php xml节点编辑

分享到: