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文件的简单例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 生成ubuntu自动切换壁纸xml文件的php代码

    复制代码 代码如下: <?php /* * 生成ubuntu自动切换壁纸xml文件 */ //图片目录 $dir = '/home/yuxing/background'; $hd = opendir($dir) or die('can not open dir'); $files = array(); while($file = readdir($hd)) { $tem = "$dir/$file"; if (is_file($tem) && in_array(s

  • php获取本地图片文件并生成xml文件输出具体思路

    复制代码 代码如下: <?php $dir="upload/"; $dir_res=opendir($dir); $fileFormat=array(0=>".jpg",1=>".gif",2=>".png",3=>".bmp"); $xmlData = ""; $xmlData .= "<photos>\n"; while(

  • php中使用DOM类读取XML文件的实现代码

    主要功能:php中使用DOM类读取XML文件 设计知识点: 1.XML节点循环读取 2.用iconv()函数实现编码转换,防止中文乱码 holiday.xml文件如下 复制代码 代码如下: <?xml version="1.0" encoding="UTF-8"?> <daysOff-overTime> <year> <yearName>2012</yearName> <holiday> <

  • PHP中使用SimpleXML检查XML文件结构实例

    利用 SimpleXML 去检查 XML 结构是否符合规格,为了让这个程序可以多用途,采用了一个基准文件的作为结构准则,依据里面定义的节点跟属性,去检查文件是否符合基本要求的格式. 复制代码 代码如下: <?php        /**检查 XML 文件结构   * @param string $baseFilePath 基准结构文件   * @param string $checkFilePath 待检查文件   * @return bool 当结构与基准文件相符合时则传递 true,否则是

  • php对xml文件的增删改查操作实现方法分析

    本文实例讲述了php对xml文件的增删改查操作实现方法.分享给大家供大家参考,具体如下: xml源文件 <?xml version="1.0" encoding="utf-8"?> <root> <endTime>2016-08-01</endTime> <content>文件内容</content> </root> $file='callBoard.xml'; 查询xml: $do

  • php的XML文件解释类应用实例

    本文实例讲述了php的XML文件解释类及其用法,是非常实用的技巧.分享给大家供大家参考.具体如下: XMLParser.class.php类文件如下: <?php /** XML 文件分析类 * Date: 2013-02-01 * Author: fdipzone * Ver: 1.0 * * func: * loadXmlFile($xmlfile) 读入xml文件输出Array * loadXmlString($xmlstring) 读入xmlstring 输出Array */ class

  • php使用simplexml_load_file加载XML文件并显示XML的方法

    本文实例讲述了php使用simplexml_load_file加载XML文件并显示XML的方法.分享给大家供大家参考.具体实现方法如下: <?php $xml = simplexml_load_file("sample.xml"); echo htmlspecialchars($xml->asXML()); ?> sample.xml文件内容如下 <library> <book> <title>A</title> <

  • 使用PHP DOM-XML创建和解析XML文件

    使用PHP DOM-XML创建和解析XML文件 <?php    /**   * Topic:       Create and parse XML files using PHP DOM-XML   * Source:      http://www.php.net/domxml   * Reference:   http://www.zugeschaut-und-mitgebaut.de/php/extension.domxml.html   * Author:      urs@circl

  • PHP中的生成XML文件的4种方法分享

    生成如下XML串 Xml代码 复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?><article>    <item>        <title size="1">title1</title>        <content>content1</content>        <pubdate>2009

  • PHP简单读取xml文件的方法示例

    本文实例讲述了PHP简单读取xml文件的方法.分享给大家供大家参考,具体如下: 我将软件版本更新中的版本号等数据信息存放在xml文件中,使用时将版本信息读取出来. xml文件内容如下: <xml version="v1.01" encoding="utf-8"> <updataMessages> <version>v1.8.7</version> </updataMessages> </xml>

  • php XPath对XML文件查找及修改实现代码

    复制代码 代码如下: <?php /* <?xml version="1.0" encoding="utf-8"?> <article> <item> <title name="t1">11</title> <content>content1</content> <pubdate>2009-10-11</pubdate> </i

  • PHP中3种生成XML文件方法的速度效率比较

    PHP中3种生成XML文件方法的速度比较 有3种方法,分别是直接写;使用DomDocument;使用SimpleXML;其实还有第4种:使用XMLWriter,不过我没用过,也懒得试了.主要是想看看这3种方式哪个速度要快些直接上代码: 复制代码 代码如下: private function directWriteXml(&$data){  $xmltext='<?xml version="1.0" encoding="UTF-8" ?>';  $

随机推荐