PHPdom操作查找xml标签文本

PHP5.3.5版本中提供了三套方案可以对xml文件进行crud操作

三套方案分别是DOM,SimpleXML.DOMXPath(已经归结到了DOM),经常用到的 其实就只有两种方案DOM 和SimpleXML,DOM与SimpleXML差不多.可以先DOM入手开始学习。

DOM一套方案中提供了DOMDocument对象,该对象可以将HTML和XML文档描绘成一个文档树,并且充当文档树的root节点也就是文档的树的根节点,该对象提供了一套方法,其中可以利用load($filename path)方法来加载html/XML文档。利用getElementsByTag()来获取某个标签节点并返回一个DOCNodelist对象列表,

<?php
	//创建一个DOCUment对象,描述一个html/XML树形文档,并充当root
	$xmdocum=new DOMDocument();
	//加载XML文档
	$xmdocum->load("verdate.xml");
	//获取元素标签节点列表 $stulist是一个DOMNodeList对象
	$stulist=$xmdocum->getElementsByTagName("学生");
	//获取第一个学生对象 $stu_one是一个DOMNode对象
	$stu_one=$stulist->item(0);
	//echo $stu_length=$stu_one->length;
	
	//获取学生对象下面的子对象
	$stuname=$stu_one->getElementsByTagName("name");
	//获取节点值
	echo $stOne_name=$stuname->nodeValue;

?>

用到的类有:DOMNode      DOMDocument   DOMNodeList     

用到的方法:DOMDocument::load():加载html或者XML     

 item($index):用于取出DOMNodelist中的第index个节点   节点$index从零开始算

DOMNode::nodeValue:取出节点的值

说明:DOMCocument 的父类是DOMNode类   DOMNodeList

取出所有学生名字

<?php
	//创建一个DOCUment对象,描述一个html/XML树形文档,并充当root
	$xmdocum=new DOMDocument();
	//加载XML文档
	$xmdocum->load("verdate.xml");
	//获取元素标签节点列表
	$stulist=$xmdocum->getElementsByTagName("学生");
	//获取第一个学生对象
	$stu_length=$stulist->length;
	for($i=0;$i<$stu_length;$i++){
	$stu_one=$stulist->item($i);

	//获取学生对象下面的子对象
	$stuname=$stu_one->getElementsByTagName("name");
	echo $stOne_name=$stuname->item(0)->nodeValue."<br/>";
	}
?>




你可能感兴趣的:(PHP)