php+xml编程之xpath的应用实例

yipeiwu_com6年前PHP代码库

本文实例讲述了php+xml编程之xpath的应用。分享给大家供大家参考。具体如下:

xpath设计的核心思想:迅速定位到你所需要的元素(或者节点)。PHP 文件在载入xml文件和创建DOMDocument 对象后,就可以开始建立DOMXPath 对象。建立形式如下:

复制代码 代码如下:
$xpath = new DOMXPath($xmldoc);

建立 DOMXPath 对象后,就可以开始使用 DOMXPath::query()方法,找到你需要的元素:

复制代码 代码如下:
$item = $xpath->query("xpath路径表达式");//返回值为DOMNodList对象

实例:

xml文档:words.xml

复制代码 代码如下:
<?xml version="1.0" encoding="utf-8"?>
<words>
<word>
 <en>boy</en>
 <ch>男孩</ch>
</word>
<word>
 <en>girl</en>
 <ch>女孩</ch>
</word>
<word>
 <en>teacher</en>
 <ch>老师</ch>
</word>
<word>
 <en>beauty</en>
 <ch>美女</ch>
</word>
</words>

xpath应用:index.php

复制代码 代码如下:
<?php
$xmldoc = new DOMDocument();
//加载文件
$xmldoc->load("words.xml");
//使用xpath查询
$xpath = new DOMXPath($xmldoc);//创建DOMXPath对象
$node_list = $xpath->query("/words/word/ch");//查询ch这个元素,返回值为DOMNodeList对象
echo $node_list->item(0)->nodeValue;
?>

希望本文所述对大家的php+XML程序设计有所帮助。

相关文章

php 类中的常量、静态属性、非静态属性的区别

一.类常量:在类中始终保持不变的值定义为常量 类的常量不能使用访问限制修饰符,他是 public 的,可继承,可以被子类重写,访问类的常量必须使用双冒号 :: ,可以使用类名或类的实例来...

Notice: Undefined index: page in E:\PHP\test.php on line 14

治標不治本的就是將php.ini內的reporting部份修改,讓notice不顯示 error_reporting = E_ALL; display all errors, warni...

php 获取客户端的真实ip

复制代码 代码如下: function GetIP(){ if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_I...

PHP中对数组的一些常用的增、删、插操作函数总结

有时候我们需要扩展一个数组,或者删掉数组的一部分,PHP为扩展和缩小数组提供了一些函数。对于那些希望模仿各种队列实现(FIFO、LIFO)的程序员来说,这些函数可以提供便利。顾名思义,从...

PHP实现根据图片色界在不同位置加水印的方法

本文实例讲述了PHP实现根据图片色界在不同位置加水印的方法。分享给大家供大家参考。具体如下: 在使用php编程的时候, 很多时候需要对上传的图片加水印,来确定图片版权和出处. 但是,一般...