您的位置:首页 > 编程语言 > PHP开发

PHPdom操作查找xml标签文本

2014-01-06 14:10 639 查看
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