PHP操作XML中XPath的应用示例


Posted in PHP onJuly 04, 2019

本文实例讲述了PHP操作XML中XPath的应用。分享给大家供大家参考,具体如下:

XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言。XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。起初 XPath 的提出的初衷是将其作为一个通用的、介于XPointer与XSLT间的语法模型。但是 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 相关文章推荐
php采集时被封ip的解决方法
Aug 29 PHP
php中经典方法实现判断多维数组是否为空
Oct 23 PHP
解析用PHP读写音频文件信息的详解(支持WMA和MP3)
May 10 PHP
使用php记录用户通过搜索引擎进网站的关键词
Feb 13 PHP
PHP实现取得HTTP请求的原文
Aug 18 PHP
php实现的支持断点续传的文件下载类
Sep 23 PHP
PHP获取网站中各文章的第一张图片的代码示例
May 20 PHP
PHP微信开发之有道翻译
Jun 23 PHP
PHP基于ICU扩展intl快速实现汉字转拼音及按拼音首字母分组排序的方法
May 03 PHP
python进程与线程小结实例分析
Nov 11 PHP
PHP 超级全局变量相关总结
Jun 30 PHP
PHP中echo与print区别点整理
Mar 09 PHP
PHP实现财务审核通过后返现金额到客户的功能
Jul 04 #PHP
PHP使用DOM对XML解析处理操作示例
Jul 04 #PHP
PHP创建XML接口示例
Jul 04 #PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
Jul 03 #PHP
PHP实现关键字搜索后描红功能示例
Jul 03 #PHP
Smarty模板类内部原理实例分析
Jul 03 #PHP
Referer原理与图片防盗链实现方法详解
Jul 03 #PHP
You might like
Terran兵种介绍
2020/03/14 星际争霸
PHP4和PHP5共存于一系统
2006/11/17 PHP
一键生成各种尺寸Icon的php脚本(实例)
2017/02/08 PHP
ASP小贴士/ASP Tips javascript tips可以当桌面
2009/12/10 Javascript
JavaScript中的变量声明早于赋值分析
2012/03/01 Javascript
js精度溢出解决方案
2012/12/02 Javascript
js特殊字符过滤的示例代码
2014/03/05 Javascript
IE中图片的onload事件无效问题和解决方法
2014/06/06 Javascript
js网页滚动条滚动事件实例分析
2015/05/05 Javascript
JavaScript模板引擎用法实例
2015/07/10 Javascript
JavaScript在网页中画圆的函数arc使用方法
2015/11/13 Javascript
js实现下拉列表选中某个值的方法(3种方法)
2015/12/17 Javascript
Angularjs中使用layDate日期控件示例
2017/01/11 Javascript
Bootstrap媒体对象学习使用
2017/03/07 Javascript
jQuery中.attr()和.data()的区别分析
2017/09/03 jQuery
微信小程序蓝牙连接小票打印机实例代码详解
2019/06/03 Javascript
vue-cli在 history模式下的配置详解
2019/11/26 Javascript
JS实现时间校验的代码
2020/05/25 Javascript
JS事件循环机制event loop宏任务微任务原理解析
2020/08/04 Javascript
python装饰器初探(推荐)
2016/07/21 Python
python基础之入门必看操作
2017/07/26 Python
Python实现1-9数组形成的结果为100的所有运算式的示例
2017/11/03 Python
Python实现自定义函数的5种常见形式分析
2018/06/16 Python
搞定这套Python爬虫面试题(面试会so easy)
2019/04/03 Python
Python字典推导式将cookie字符串转化为字典解析
2019/08/10 Python
python快速排序的实现及运行时间比较
2019/11/22 Python
python运用pygame库实现双人弹球小游戏
2019/11/25 Python
canvas绘制圆角头像的实现方法
2019/01/17 HTML / CSS
国旗下的演讲稿
2014/05/08 职场文书
交警作风整顿剖析材料
2014/10/11 职场文书
见习报告的格式
2014/11/04 职场文书
先进个人自荐书
2015/03/06 职场文书
离婚案件上诉状
2015/05/23 职场文书
大学开学感言
2015/08/01 职场文书
关于python爬虫应用urllib库作用分析
2021/09/04 Python
Python&Matlab实现樱花的绘制
2022/04/07 Python