php添加数据到xml文件的简单例子

 更新时间:2016年09月08日 09:35:23   投稿:jingxian  
下面小编就为大家带来一篇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添加数据到xml文件的简单例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Laravel 4.2 中队列服务(queue)使用感受

    Laravel 4.2 中队列服务(queue)使用感受

    Laravel的队列组件为许多队列服务提供了统一的API接口。队列服务让你可以异步处理一个耗时任务,比如延迟发送一封邮件,从而大大加快了应用的Web请求处理速度。
    2014-10-10
  • 初识PHP中的Swoole

    初识PHP中的Swoole

    Swoole是一种PHP高级Web开发框架,框架不是为了提升网站的性能,是为了提升网站的开发效率。最少的性能损耗,换取最大的开发效率
    2016-04-04
  • ThinkPHP中Common/common.php文件常用函数功能分析

    ThinkPHP中Common/common.php文件常用函数功能分析

    这篇文章主要介绍了ThinkPHP中Common/common.php文件常用函数功能,通过注释的形式详细分析了C方法、tag方法、B方法及autoload方法的功能与代码原理,需要的朋友可以参考下
    2016-05-05
  • PHP curl模拟登录带验证码的网站

    PHP curl模拟登录带验证码的网站

    最近接了个项目,其中有需求是要登录带验证码的网站,获取数据,但是我们不可能人为的一直去记录数据,想通过自动采集的方式进行,下面小编给大家带来的相关代码,对php curl 模拟登录带验证码的网站感兴趣的朋友一起学习吧
    2015-11-11
  • Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例

    Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例

    这篇文章主要介绍了Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点,结合实例形式分析了thinkPHP递归遍历与数据查询、排序等相关操作技巧,需要的朋友可以参考下
    2020-04-04
  • Yii2结合Workerman的websocket示例详解

    Yii2结合Workerman的websocket示例详解

    这篇文章主要给大家介绍了关于Yii2结合Workerman的websocket的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2018-09-09
  • Yii2数据库操作常用方法小结

    Yii2数据库操作常用方法小结

    这篇文章主要介绍了Yii2数据库操作常用方法,结合实例形式总结分析了Yii2常用的增删查改及配置相关操作技巧,需要的朋友可以参考下
    2017-05-05
  • YII2.0之Activeform表单组件用法实例

    YII2.0之Activeform表单组件用法实例

    这篇文章主要介绍了YII2.0之Activeform表单组件用法,结合实例形式Activeform表单组件的具体类型及相关使用技巧,需要的朋友可以参考下
    2016-01-01
  • php 截取中英文混合字符串的方法

    php 截取中英文混合字符串的方法

    这篇文章主要介绍了php 截取中英文混合字符串,需要的朋友可以参考下
    2018-05-05
  • PHP 实现从数据库导出到.csv文件方法

    PHP 实现从数据库导出到.csv文件方法

    这篇文章主要介绍了 PHP 实现从数据库导出到.csv文件方法的相关资料,需要的朋友可以参考下
    2017-07-07

最新评论