<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<html>
<link rel="shortcut icon" href="1.ico" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php
function getNodeVal(&$myNode,$tagName,$i){ //$myNode:节点对象,$tagName:节点名称,$i:节点项目
return $myNode->getElementsByTagName($tagName)->item($i)->nodeValue;
} $xmldoc=new DOMDocument(); //创建xml节点对象
$xmldoc->load("class.xml"); //加载xml文档
//var_dump($xmldoc);
$stus=$xmldoc->getElementsByTagName("学生"); //获得第一节子节点的所有节点
echo"共有".$stus->length."人!";
//var_dump($stus); $stu_name=$stus->item(0); //获得第一节子节点的单个节点
echo getNodeVal($stu_name,"名字",0);//获得第二节子节点的值
?>
</html>

  

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<html>
<link rel="shortcut icon" href="1.ico" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php
function getNodeVal(&$myNode,$tagName,$i){ //$myNode:节点对象,$tagName:节点名称,$i:节点项目
return $myNode->getElementsByTagName($tagName)->item($i)->nodeValue;
} $xmldoc=new DOMDocument(); //创建xml节点对象
$xmldoc->load("class.xml"); //加载xml文档
//var_dump($xmldoc);
$stus=$xmldoc->getElementsByTagName("学生"); //获得第一节子节点的所有节点
echo"共有".$stus->length."人!";
//var_dump($stus); $stu_name=$stus->item(0); //获得第一节子节点的单个节点
echo getNodeVal($stu_name,"名字",0);//获得第二节子节点的值
/**********************上面是方法1下面是方法2**************************************/
echo"<hr/>";
function getValue($node,$node_1,$i,$directory){
/*$node:XML第一节节点名
               *$node_1:第二节节点名 
*$i:查询的节点位置
*$directory:XML文件路径
*/
$xmldoc=new DOMDocument();
$xmldoc->load($directory);
$deploy=$xmldoc->getElementsByTagName($node);
$deploy_1=$deploy->item($i);
return getNodeVal($deploy_1,$node_1,0); //获得XML信息
} echo getValue("学生","名字",0,"class.xml");echo"<hr/>";
echo getValue("学生","名字",1,"class.xml");echo"<hr/>";
echo getValue("学生","名字",2,"class.xml");echo"<hr/>";
echo getValue("学生","年龄",0,"class.xml");echo"<hr/>";
echo getValue("学生","年龄",1,"class.xml");echo"<hr/>";
echo getValue("学生","年龄",2,"class.xml");echo"<hr/>";
echo getValue("学生","介绍",0,"class.xml");echo"<hr/>";
echo getValue("学生","介绍",1,"class.xml");echo"<hr/>";
echo getValue("学生","介绍",2,"class.xml");echo"<hr/>";
?>
</html>

  

  

<?xml version="1.0" encoding="UTF-8"?>
<班级>
<学生>
<名字>孙悟空</名字>
<年龄>500</年龄>
<介绍>唐僧大徒弟</介绍>
</学生>
<学生>
<名字>猪八戒</名字>
<年龄>300</年龄>
<介绍>唐僧二徒弟</介绍>
</学生>
<学生>
<名字>沙和尚</名字>
<年龄>200</年龄>
<介绍>唐僧三徒弟</介绍>
</学生>
</班级>

  

xml文档PHP查询代码(学习使用)的更多相关文章

  1. 验证XML文档的范例代码

    如果想变成自己的,就把这里的xml文档名替换成自己xml文档名 var xmlDoc = new ActiveXObject("Microsoft.XMLDOM") xmlDoc. ...

  2. XMLHelper类 源码(XML文档帮助类,静态方法,实现对XML文档的创建,及节点和属性的增、删、改、查)

    以下是代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; using Sy ...

  3. C# 写入XML文档三种方法详细介绍

      三个类将同样的xml内容写入文档,介绍了如何使用XmlDocument类对XML进行操作,以及如何使用LINQ to XML对XML进行操作. 它们分别使用了XmlDocument类和XDocum ...

  4. Dom4j修改xml文档引入

    前面介绍了如何解析xnl文档的内容,这里对修改xml展开讨论. 一.首先看一下,写出内容到xml文档的主要代码: XMLWriter writer = new XMLWriter(OutputStre ...

  5. XML——对XML文档的创建与增删改查

    一.创建的第一种方式  //1.创建一个XML文档 XmlDocument doc = new XmlDocument(); //2.创建第一行描述信息 XmlDeclaration dec = do ...

  6. 使用SAX解析xml文档

    1.首先,在main方法中解析xml文档,具体代码如下: import org.w3c.dom.*; import javax.xml.parsers.DocumentBuilder; import ...

  7. XML文档的PHP程序查询代码

    PHP文档: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " http://www ...

  8. XML学习笔记(四)-- 修饰XML文档的CSS

    标签(空格分隔): 学习笔记 XML为存储结构化数据提供了强大的方法,但是它没有提供关于数据如何显示地信息,(数据的结构与数据表示无关).可以使用CSS来控制XML文档中各元素的呈现方式. CSS语法 ...

  9. MongoDB的学习--文档的查询

    继续关于<MongoDB权威指南>记录,今天的内容是文档的查询~~ MongoDB官网地址:http://www.mongodb.org/ 我使用的是MongoDB 2.4.8 find函 ...

随机推荐

  1. 一个不错的angular 字体库( 引用js文件就行)

    https://klarsys.github.io/angular-material-icons/ 使用方法: 1.引入这个js文件, <script src="//cdnjs.clo ...

  2. hibernate中SQLQuery的addEntity()方法

    如果使用原生sql语句进行query查询时,hibernate是不会自动把结果包装成实体的.所以要手动调用addEntity(Class class)等一系列方法. 如session.createSQ ...

  3. CGAffineTransform 放射变换解析 即矩阵变换

    转载自;http://www.cocoachina.com/bbs/3g/read.php?tid=151136 矩阵乘法A B相乘要A的列数等于B的行数才有定义,结果是一个 A行B列的矩阵C,C的每 ...

  4. Android Studio调试功能使用总结---转

    Android Studio调试功能使用总结[转]   这段时间一直在使用Intellij IDEA, 今天把调试区工具的使用方法记录于此. 先编译好要调试的程序. 1.设置断点 选定要设置断点的代码 ...

  5. PAT (Advanced Level) 1056. Mice and Rice (25)

    简单模拟. #include<iostream> #include<cstring> #include<cmath> #include<algorithm&g ...

  6. Qt5:无边框窗口拖动

    在窗口程序中,无边框窗口程序一般需要特殊处理才能拖动 Qt中,要实现无边框窗口的拖动,需要重新实现 mousePressEvent 和 mouseMoveEvent 俩虚函数 void Widget: ...

  7. Python3基础 list(enumerate()) 将一个列表的每一个元素转换成 带索引值的元组

    镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.-------------------------------------- ...

  8. Python多进程并发(multiprocessing)用法实例详解

    http://www.jb51.net/article/67116.htm 本文实例讲述了Python多进程并发(multiprocessing)用法.分享给大家供大家参考.具体分析如下: 由于Pyt ...

  9. php 自动发送邮件的实现

    原文: http://www.cnblogs.com/zichi/p/4058055.html http://www.jb51.net/article/32479.htm 效果: 访问: test.p ...

  10. POJ 3494 Largest Submatrix of All 1’s

    POJ 2796 Feel Good HDU 1506 Largest Rectangle in a Histogram 和这两题一样的方法. #include<cstdio> #incl ...