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之第一天
Oct 09 PHP
php中变量及部分适用方法
Mar 27 PHP
php的curl实现get和post的代码
Aug 23 PHP
PHP 多维数组排序实现代码
Aug 05 PHP
php 获取百度的热词数据的代码
Feb 18 PHP
有关PHP中MVC的开发经验分享
May 17 PHP
php分页示例分享
Apr 30 PHP
thinkphp文件引用与分支结构用法实例
Nov 26 PHP
PHP如何将XML转成数组
Apr 04 PHP
Smarty简单生成表单元素的方法示例
May 23 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
Mar 02 PHP
使用PHP反射机制来构造&quot;CREATE TABLE&quot;的sql语句
Mar 21 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
PHPExcel简单读取excel文件示例
2016/05/26 PHP
javascript 命名规则 变量命名规则
2010/02/25 Javascript
基于jquery的一个简单的脚本验证插件
2010/04/05 Javascript
25个优雅的jQuery Tooltip插件推荐
2011/05/25 Javascript
javascript教程之不完整的继承(js原型链)
2014/01/13 Javascript
jQuery使用zTree插件实现树形菜单和异步加载
2016/02/25 Javascript
JavaScript浏览器对象之一Window对象详解
2016/06/03 Javascript
js友好的时间返回函数
2016/08/24 Javascript
微信小程序实现给循环列表添加点击样式实例
2017/04/26 Javascript
es6学习笔记之Async函数的使用示例
2017/05/11 Javascript
如何使用less实现随机下雪动画详解
2019/01/02 Javascript
layui table 获取分页 limit的方法
2019/09/20 Javascript
Vue项目中Api的组织和返回数据处理的操作
2019/11/04 Javascript
JSONP 的原理、理解 与 实例分析
2020/05/16 Javascript
Python的SQLalchemy模块连接与操作MySQL的基础示例
2016/07/11 Python
python3+PyQt5图形项的自定义和交互 python3实现page Designer应用程序
2020/07/20 Python
python调用其他文件函数或类的示例
2019/07/16 Python
浅谈django2.0 ForeignKey参数的变化
2019/08/06 Python
HTML5对手机页面长按会粘贴复制禁用的解决方法
2016/07/19 HTML / CSS
利用HTML5 Canvas API绘制矩形的超级攻略
2016/03/21 HTML / CSS
使用phonegap操作数据库的实现方法
2017/03/31 HTML / CSS
英国评分最高的女性剃须刀订阅盒:FFS Beauty
2018/01/25 全球购物
Nayomi官网:沙特阿拉伯王国睡衣和内衣品牌
2020/12/19 全球购物
LUISAVIAROMA中国官网:时尚奢侈品牌购物网站
2020/11/01 全球购物
初中语文教学反思
2014/02/02 职场文书
中学生学雷锋演讲稿
2014/04/26 职场文书
写字楼租赁意向书
2014/07/30 职场文书
运动会演讲稿300字
2014/08/25 职场文书
老人节标语大全
2014/10/08 职场文书
放弃继承权公证书
2015/01/23 职场文书
如何写辞职信
2015/05/13 职场文书
2016年综治和平安建设宣传月活动总结
2016/04/01 职场文书
jQuery class属性操作addClass()与removeClass()、hasClass()、toggleClass()
2021/03/31 jQuery
用Python实现屏幕截图详解
2022/01/22 Python
java版 联机五子棋游戏
2022/05/04 Java/Android
css样式important规则的正确使用方式
2022/06/10 HTML / CSS