DOM方式操作XML

在开发ajax或web service程序时,需要对xml格式的内容,进行处理,得到我们用户喜欢的一个结果。
PHP操作xml的方式非常之多,12种左右。
但是,我们只需要学习两种即可:
DOM方式:所有语言都支持的方式,并且是一样API,稍微难一点
SimpleXML方式:php提供一种简单的方式,非常简单。
1.什么是DOM
DOM :Document Object Model,文档对象模型
D:document,是指的文档本身,xml文档,HTML文档
O:Object,对象,是将元素、属性和文本等转成节点对象,对象有属性和方法,可以调用这些属性和方法完成相关的操作
M:Model,树模型,将Document转成一个树模型,节点,节点之间有关联。将这些节点转成对象。转换过程是在内存中进行的。
DOM操作XML步骤
简单来说,就只有三步:
在这里插入图片描述
注意事项
php利用DOM系列对象,完成上述操作。
在第一步中,我们只需提供哪个文档需要转换即可,其它的交给php来完成。
在第三步中,只需调用php的方法即可。
整个处理过程中,会用到4个对象,
在这里插入图片描述
先来看一下,DOMDocument对象
在这里插入图片描述
示例如下:
在这里插入图片描述
3.DOM操作原理解析
[需求]:对于bookstore.xml,将其以表格的形式显示到页面中,如图:
在这里插入图片描述首先,载入xml文档, 打印看结果
在这里插入图片描述
在这里插入图片描述
可以对比html中,如何来查找元素的?
在这里插入图片描述
可以使用该方法,获取title标签。
在这里插入图片描述
查看结果如下:
在这里插入图片描述
直接,找DOMNodeList类定义,
在这里插入图片描述
我们只需要使用item方法,传入下标即可。0表示第一个。
在这里插入图片描述
查看结果如下:
在这里插入图片描述
直接使用对象的属性,就可以输出书的名称了。
在这里插入图片描述
结果如下:
在这里插入图片描述
最终代码如下:
在这里插入图片描述
输出结果如下:
在这里插入图片描述
整个的处理过程中,比较麻烦的一点就是用了四个对象,这四个对象之间到底有何关联呢?
这里,我使用了一个工具,绘制uml图。
注意,DOMNodeList 和DOMNode的关系
在这里插入图片描述
DOMNodeList对象是由DOMNode对象组成的。在OOP中,称之为组成关系
四个对象的关系如图所示:
在这里插入图片描述
这里,就有一个抽象类,就是DOMNode。
在使用的过程中,并不会直接使用DOMNode对象,我们用的是DOMElement。

DOMNode其实指的节点,节点有分成三种:元素(DOMElement)、属性、文本。
我们一般只会使用DOMElement,不用属性和文本元素。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值