php添加数据到xml文件中

高洛峰
发布: 2016-10-10 10:57:56
原创
995 人浏览过

导读:php添加数据到xml文件中

 xml文件:stu.xml:

复制代码代码如下:

<?xml version="1.0" encoding="utf-8" ?>
<AllData>
<xueshengmen>
<xuesheng>
  <name>张三</name>
  <yuwen>80</yuwen>
  <shuxue>90</shuxue>
  <yingyu>70</yingyu>
</xuesheng>
<xuesheng>
  <name>李四</name>
  <yuwen>60</yuwen>
  <shuxue>90</shuxue>
  <yingyu>75</yingyu>
</xuesheng>
</xueshengmen>
</AllData>
登录后复制

以上文件stu.xml提供了部分学生数据。
现在需要在每个xuesheng的节点里面添加一个zongfen的属性并且它的值等于yuwen+shuxue+yingyu的值
如下所示:

复制代码代码如下:

<?xml version="1.0" encoding="utf-8" ?>
<AllData>
<xueshengmen>
<xuesheng>
  <name>张三</name>
  <yuwen>80</yuwen>
  <shuxue>90</shuxue>
  <yingyu>70</yingyu>
  <zongfen>240</zongfen>
</xuesheng>
<xuesheng>
  <name>李四</name>
  <yuwen>60</yuwen>
  <shuxue>90</shuxue>
  <yingyu>75</yingyu>
  <zongfen>2225</zongfen>
</xuesheng>
</xueshengmen>
</AllData>
登录后复制

用php来实现:

复制代码代码如下:

<?php
$doc = new DOMDocument();
$doc->load( ‘stu.xml’ );
  $students = $doc->getElementsByTagName( “xuesheng” );
  foreach($students as $stu){
  $yuwen = $stu->getElementsByTagName( “yuwen” )->item(0)->nodeValue;
  $shuxue = $stu->getElementsByTagName( “shuxue” )->item(0)->nodeValue;
  $yingyu = $stu->getElementsByTagName( “yingyu” )->item(0)->nodeValue;
  $zongfen = $stu->getElementsByTagName( “zongfen” )->item(0)->nodeValue;
  if($zongfen){
   echo “节点已经存在了,不再添加!”;
   continue;
  }
  $zongfen = $yuwen+$shuxue+$yingyu;
  $newNode = $doc->createElement(“zongfen”,$zongfen);
  $stu->appendChild($newNode);
  }
 $result = $doc->saveXML(‘stu.xml’);
?>
登录后复制


来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!