PHP给XML添加数据
PHP #xml #domdocument2014-04-15 22:22
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 “节点已经存在了,不再添加!”; // http://yige.org/
continue;
}
$zongfen = $yuwen+$shuxue+$yingyu;
$newNode = $doc->createElement(“zongfen”,$zongfen);
$stu->appendChild($newNode);
}
$result = $doc->saveXML(‘stu.xml’);
相关文章
- PHP生成随机字符串的函数 2014/04/15
- PHP生成随机密码的函数 2014/04/14
- PHP计算时间差的方法 2014/04/13
- PHP的SQL注入式攻击介绍 2014/04/13
- php过滤危险html的代码 2014/04/13
- PHP获取文件大小的方法 2014/04/13
- PHP生成唯一订单号的方法 2014/04/13
- PHP中header函数的常用方法 2014/04/13
- PHP用header强制下载时IE文件名中文乱码问题解决方法 2014/04/09
- PHP 5.4不对中文json编码的方法 2014/04/09