php 修改、增加xml结点属性的实现代码

php 修改 增加xml结点属性的代码,供大家学习参考。
php修改xml结点属性,增加xml结点属性的代码,有需要的朋友,参考下。

1、xml文件

代码如下:

<?xml version="1.0" encoding="UTF-8" ?>
<clientSet>
<server url="192.168.0.180" port="1935" />
<rootPath value="" />
<homePath value="http://www.aaa.com" />
<helpPath value="help.html" />
<language value="en" />
<theme value="default" />
<visibleMarquee value = "true" />
<visibleWhitePaper value="true" />
<showMemberRoomForGuest value = "true" />
<emotions enabled="true" column="5" autoPlay="false">
<item name="Birthday" src="cartoon/movie/birthday.swf" thumb="cartoon/preview/birthday-small.swf" duration="15"/>
<item name="Boom" src="cartoon/movie/boom.swf" thumb="cartoon/preview/boom-small.swf" duration="6"/>
<item name="Bubble" src="cartoon/movie/bubble.swf" thumb="cartoon/preview/bubble-small.swf" duration="7.5"/>
<item name="Cry" src="cartoon/movie/cry.swf" thumb="cartoon/preview/cry-small.swf" duration="5.4"/>
<item name="Doggie" src="cartoon/movie/doggie.swf" thumb="cartoon/preview/doggie-small.swf" duration="13"/>
<item name="Greeting" src="cartoon/movie/greeting.swf" thumb="cartoon/preview/greeting-small.swf" duration="7.4"/>
<item name="Football" src="cartoon/movie/football.swf" thumb="cartoon/preview/football-small.swf" duration="2.2"/>
</emotions >
</clientSet>

2、php代码

代码如下:

<?
$dom=new DOMDocument('1.0');
$dom->load('x.xml');
$em=$dom->getElementsByTagName('emotions');
$em=$em->item(0);
$items=$em->getElementsByTagName('item');
foreach($items as $a){
foreach($a->attributes as $b){
if($b->nodeValue=='Birthday'){
$a->setAttribute('name','nBirthday');
}
}
}
$t=$dom->createElement('item');
$t->setAttribute('name','x');
$t->setAttribute('src','www.baidu.com');
$t->setAttribute('duration','duration');
$em->appendChild($t);
$dom->save('x.xml');
?>

PHP解析XML文档属性并编辑

代码如下:

<?php
//读取xml
 $dom=new DOMDocument('1.0');
$dom->load('data.xml');
$em=$dom->getElementsByTagName('videos');//最外层节点
$em=$em->item(0);
$items=$em->getElementsByTagName('video');//节点
//如果不用读取直接添加的话把下面这一段去掉即可
foreach($items as $a){
foreach($a->attributes as $b){//$b->nodeValue;节点属性的值$b->nodeName;节点属性的名称
 echo $b->nodeName;
 echo ":";
 echo $b->nodeValue;
 echo "<br/>";
}
}
//下面是往xml写入一行新的
$t=$dom->createElement('video');//<video
$t->setAttribute('title','1');//<video name="data"
$t->setAttribute('src','2');//<video name="data" src="2"
$t->setAttribute('img','1');//<video name="data" img="1"
$em->appendChild($t);//<video name="data" img="1"/>
$dom->save('data.xml');
?>

当时的xml文档:
 

代码如下:

<?xml version="1.0"?>
<videos>
 <video img="a" url="1" title="1" nickname="1" tag="1" vid="1" star="1"/>
 <video img="b" url="2" title="2" nickname="2" tag="2" vid="2" star="2"/>
 <video img="c" url="3" title="3" nickname="3" tag="3" vid="3" star="3"/>
 <video title="d" src="2" img="1"/>
</videos>

//下面这一个文件是后改的可以修改xml

代码如下:

<?php
$doc = new DOMDocument();
$doc->load('data.xml');

//查找 videos 节点
$root = $doc->getElementsByTagName('videos');

//第一个 videos 节点
$root = $root->item(0);

//查找 videos 节点下的 video 节点
$userid = $root->getElementsByTagName('video');

//遍历所有 video 节点
foreach ($userid as $rootdata)
{
//遍历每一个 video 节点所有属性
foreach ($rootdata->attributes as $attrib)
{
$attribName = $attrib->nodeName;   //nodeName为属性名称
$attribValue = $attrib->nodeValue; //nodeValue为属性内容

//查找属性名称为ip的节点内容
if ($attribName =='img')
{
//查找属性内容为ip的节点内容
if ($attribValue =='1')
{
//将属性为img,img内容为1的修改为image;
$rootdata->setAttribute('img','image');
$doc->save('data.xml');
}
}
}

?>

(0)

相关推荐

  • php中DOMDocument简单用法示例代码(XML创建、添加、删除、修改)

    共分四个文件,分别是创建.增加.删除.修改四个功能,变量都是写死的,改一改用$_POST方式接收就可以用了 //index.php 创建功能 复制代码 代码如下: <?php $xmlpatch = 'index.xml'; $_id = '1'; $_title = 'title1'; $_content = 'content1'; $_author = 'author1'; $_sendtime = 'time1'; $_htmlpatch = '1.html'; jb51.net$doc

  • PHP实现对xml的增删改查操作案例分析

    本文实例讲述了PHP实现对xml的增删改查操作.分享给大家供大家参考,具体如下: 案例: index.php <?php header("content-type:text/html;charset=utf-8"); $xmldom = new DOMDocument(); $xmldom->load("demo2.xml"); //查询学生信息 $stus = $xmldom->getElementsByTagName("学生"

  • PHP中开发XML应用程序之基础篇 添加节点 删除节点 查询节点 查询节

    一. XML简介 XML(可扩展的标注语言)是一种W3C标准,主要用于Web应用程序和服务器之间实现容易的交互.数据的存储与使用. 使用XML标准编码的数据具有能容易被人和计算机解释的意义和结构.XML数据是平台和应用程序独立的.不用多说,这本身就使XML成为适合于互联网的一个理想的数据交换格式(事实上,它正是因这一用途而被开发的).最近,宽带连接的增长及消费者对于越过任何媒体进行数据共享的应用软件的需求意味着,XML Web服务和应用软件正变得越来越丰富. XML的发明正是为了解决描述网上丰富

  • 自定义php类(查找/修改)xml文档

    近期在看PHP的教学视频,其中讲到了 PHP 操作 xml 文档,学了点儿 DOMDocument 类.自己查手册又全英文,看不大懂.但还是自己写了个类,实现了查找 xml 节点,并修改节点值.背景解说完毕,且看代码如下: 复制代码 代码如下: /* <?xml version="1.0" encoding="UTF-8"?> <班级> <学生 number="101"> <名字>孙悟空</名

  • PHP对XML内容进行修改和删除实例代码

    本文主要介绍的是PHP对XML内容进行修改和删除的方法,下面话不多说,我们来看实例 原理图如下 示例代码 example.xml <?xml version="1.0" encoding="utf-8"?> <root> <book id="1"> <title>title1</title> </book> <book id="2"> <

  • 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实现对xml进行简单的增删改查(CRUD)操作示例

    本文实例讲述了PHP实现对xml进行简单的增删改查(CRUD)操作.分享给大家供大家参考,具体如下: 假如有下面xml文件: <?xml version="1.0" encoding="UTF-8"?> <setting> <preferTime>55.8</preferTime> <playerValue>56</playerValue> <reduceValue>40</r

  • 通过php修改xml文档内容的方法

    本文实例讲述了通过php修改xml文档内容的方法,分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <?php //1.创建一个DOMDocument对象.该对象就表示 xml文件 $xmldoc = new DOMDocument(); //2.加载xml文件(指定要解析哪个xml文件,此时dom树节点就会加载到内存中) $xmldoc->load("class.xml"); //3.更新一条学生student信息记录,更新她的年龄 //(1)找到该学生 $

  • 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中使用SimpleXML检查XML文件结构实例

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

随机推荐