php 读写 xml

读取xml信息

test.xml

<?xml version="1.0" encoding="UTF-8"?>
<class>
	<student>
		<name>张三</name>
		<age>23</age>
		<intro>努力学习</intro>
	</student>
	<student>
		<name>李四</name>
		<age>23</age>
		<intro>努力学习</intro>
	</student>
</class>
test.php

<?php
	$xmldoc = new DOMDocument();
	
	$xmldoc->load("test.xml");
	
	$stus = $xmldoc->getElementsByTagName("student");
	
	for($i=0;$i < $stus->length;$i++){
		
		$stu = $stus->item($i);
		echo getNodeVal($stu,"name")."--".getNodeVal($stu,"age")."--".
				getNodeVal($stu,"intro")."<br/>";
	}
	
	function getNodeVal(&$MyNode,$tagName){
		return $MyNode->getElementsByTagName($tagName)->item(0)->nodeValue;
	}
?>

写xml:

<span style="font-size:18px;"><?php
	$xmldoc = new DOMDocument("1.0","utf-8");
	
	$xmldoc->load("classes2.xml");
	
	//添加一个学生信息
	//创建学生结点
	$root = $xmldoc->getElementsByTagName("class")->item(0);
	$stu_node = $xmldoc->createElement("student");
	
	$stu_node->setAttribute("sex", "男");
	
	//创建名字结点并且挂载到学生结点下
	$stu_node_name=$xmldoc->createElement("name");
	$stu_node_name->nodeValue = "唐唐";
	$stu_node->appendChild($stu_node_name);
	
	$stu_node_age=$xmldoc->createElement("age");
	$stu_node_age->nodeValue = "24";
	$stu_node->appendChild($stu_node_age);
	
	$stu_node_intro=$xmldoc->createElement("intro");
	$stu_node_intro->nodeValue = "我是唐唐,我一直很努力";
	$stu_node->appendChild($stu_node_intro);
	
	//把学生结点挂载到根结点下
	$root->appendChild($stu_node);
	
	$xmldoc->save("new.xml");
?></span>


删除结点:

<?php
	$xmldoc = new DOMDocument("1.0","utf-8");
	
	$xmldoc->load("test.xml");
	//删除一个结点
	$root = $xmldoc->getElementsByTagName("class")->item(0);
	
	$stus = $xmldoc->getElementsByTagName("student");
	
	$stu1 = $stus->item(2);
	
	//$root->removeChild($stu1);
	
	$stu1->parentNode->removeChild($stu1);
	
	$xmldoc->save("test.xml");
?>

修改结点:

<?php
	$xmldoc = new DOMDocument("1.0","utf-8");
	
	$xmldoc->load("test.xml");
	//删除一个结点
	$root = $xmldoc->getElementsByTagName("class")->item(0);
	
	$stus = $xmldoc->getElementsByTagName("student");
	
	$stu1 = $stus->item(0);
	
	$stu1_name = $stu1->getElementsByTagName("name")->item(0);
	$stu1_name->nodeValue = "唐唐改名了";
	
	$xmldoc->save("test.xml");
?>


阅读更多
版权声明:技术博客自由转载,自由使用。 https://blog.csdn.net/dai_jing/article/details/45505269
文章标签: php
个人分类: php
想对作者说点什么? 我来说一句

php读写xml

2012年12月14日 2KB 下载

MFC c#读写XML文件工程

2011年10月11日 139KB 下载

php读写json文件

2018年02月08日 29KB 下载

没有更多推荐了,返回首页

不良信息举报

php 读写 xml

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭