您当前的位置: 首页 > 学无止境 > XML与XSLT 网站首页XML与XSLT
php对xml的综合操作(属性新增,节点更改,节点删除)
发布时间:2015-04-07 07:29:26编辑:雪饮阅读()
删除节点php源代码(shanchu.php):
<?php
$xmldoc=new DOMDocument();
$xmldoc->load("newsjk2.xml");
//获取根节点
$root=$xmldoc->getElementsByTagName("班级")->item(0);
//找到要删除的子节点,这里我要删除第三个“学生”节点
$stu=$xmldoc->getElementsByTagName("学生")->item(1);
//$root->removeChild($stu);
$stu->parentNode->removeChild($stu);//一种更灵活的删除方式
$xmldoc->save("newtext.xml");
?>
这里删除节点有两种方法:
1、找到根节点,找到待删除节点,从根节点删除该节点
2、直接找到待删除节点,使用parentNode从待删除节点的父节点删除该节点
后者更加灵活。
php对xml属性的新增源代码(create-shuxing.php):
<?php
$xmldoc=new DOMDocument();
$xmldoc->load("newsjk2.xml");
$root=$xmldoc->getElementsByTagName("班级")->item(0);
$stus=$xmldoc->createElement("学生");
//添加属性
$stus->setAttribute("性别","男");
$name=$xmldoc->createElement("名字");
$name->nodeValue="雪饮";
$stus->appendChild($name);
$age=$xmldoc->createElement("年龄");
$age->nodeValue="23";
$stus->appendChild($age);
$intro=$xmldoc->createElement("介绍");
$intro->nodeValue="雪饮有一个博客。是雪饮个人博客。";
$stus->appendChild($intro);
$root->appendchild($stus);
$xmldoc->save("newsjk2.xml");
?>
使用$stus->setAttribute("性别","男");来为“学生”元素新增一个“性别”属性,其值为“男“。
setAttribute() 方法创建或改变某个新属性。
语法:
elementNode.setAttribute(name,value)
参数 | 描述 |
---|---|
name | 必需。规定要设置的属性名。 |
value | 必需。规定要设置的属性值。 |
说明
该方法把指定的属性设置为指定的值。如果不存在具有指定名称的属性,该方法将创建一个新属性。
php对xml节点值的更改(update.php):
<?php
$xmldoc=new DOMDocument();
$xmldoc->load("newsjk2.xml");
$stus=$xmldoc->getElementsByTagName("学生")->item(0);
$age=$stus->getElementsByTagName("年龄")->item(0);
$age->nodeValue+=10;
$xmldoc->save("newsjk2.xml");
?>
这里直接使用了追加的形式来更改节点值:$age->nodeValue+=10;
定义和用法
nodeValue 属性可设置或返回某节点的值,根据其类型。
语法:
nodeObject.nodeValue
本文由雪饮个人博客整理提供。
关键字词:属性,节点删除,个人博客