万能的数据传输格式XML下
目录
TOC\o1-3\h\z\u万能的数据传输格式XML下 1
一、PHPXML解析原理 3
1、为什么需要XML解析 3
2、如何进行XML解析(PHP) 3
二、PHPDOM解析XML 3
1、PHPDOM模型 3
1)程序的运行机制: 3
2)XML在内存中解析过程: 3
3)PHPDOM三大关键词(“面”,“串”,“点”) 4
4)PHP解析XML四步走: 4
a)开辟内存空间,形成“面” 5
b)加载XML文件到内存,形成DOM树结构 6
c)找到同级兄弟节点,形成“串” 6
d)获取同级兄弟节点并输出其值 7
2、PHPDOM查询与遍历 8
3、PHPDOM增加操作 9
4、PHPDOM删除操作 11
5、PHPDOM更新操作 12
值更新操作四步走: 12
节点更新操作六步走: 13
6、属性操作 14
1)属性的添加与更新操作 14
2)属性的判断与读取操作 15
3)移除属性 16
作业一:PHP+XML编写CRM客户关系管理系统 17
三、PHPSimpleXML实现对XML的增删改查 17
1、载入XML文件到内存,并形成SimpleXML对象 17
2、如何输入指定文本节点的值 18
3、如何遍历输出所有数据? 19
4、如何输出属性? 20
5、扩展案例:查询天气预报并给出相应的建议 21
6、simplexml添加节点 22
7、simplexml修改与删除操作 23
四、Xpath 24
1、使用绝对路径查询数据 24
2、使用相对路径查询数据 26
3、通过星号*查询所有数据 27
4、使用[]方括号进行条件查询 28
5、通过@符号进行属性查询 28
6、扩充xpath中的[]条件查询 29
五、案例:在线词霸 30
1、界面设计 30
2、设计数据库 30
3、后台系统设计 31
4、前台功能实现: 31
作业二:在线词霸 32
一、PHPXML解析原理
1、为什么需要XML解析
2、如何进行XML解析(PHP)
PHPDOM模型进行XML解析(增加、修改、删除)
PHPSimpleXML(查询)
二、PHPDOM解析XML
1、PHPDOM模型
1)程序的运行机制:
无论任何程序(js、xml)在运行时,都要经历一下过程:
当我们通过浏览器向服务器端发送请求时,系统首先将要解析的语言加载到系统内存中,并在内存中运行于解析
2)XML在内存中解析过程:
说明:在DOM模型,模型分为两种:
标准的DOM模型(JavaScript)
非标准的DOM模型(PHP)
模型原理图:
3)PHPDOM三大关键词(“面”,“串”,“点”)
4)PHP解析XML四步走:
1、在内存中开辟存储空间——”面”
2、加载XML文件到内存,并形成DOM树结构
3、获取同级兄弟节点——“串”
4、获取指定的文本节点并读取其值——“点”
示例代码:
PHP+XML图书管理系统
1)设计数据库(XML)
a)创建data.xml作为我们的数据库
b)创建根节点library
c)创建book子节点,并存储图书标题、作者、价格
2)解析XML数据
a)开辟内存空间,形成“面”
要用到的知识点:
DOMDocument
参数说明:
$version:xml版本号,采用1.0
$encoding:编码格式,utf-8
运行效果如下:
b)加载XML文件到内存,形成DOM树结构
要用到的知识点:
参数说明:
$filename:要载入xml文件的名称
c)找到同级兄弟节点,形成“串”
要用到的知识点
DOMNodeList
参数说明:
$length:获取到当前串的长度
item(索引,默认从0开始):获取指定节点
getElementsByTagName()
参数说明:
$name:要获取元素(标签、标记)的名称
d)获取同级兄弟节点并输出其值
要用到的知识点:
参数说明:
$index:通过索引获取指定元素
运行结果:
通过观察运行结果,可知该数据返回的是DOMElement类型,而手册是采用DOMNode,为什么?
答:主要是由于DOMElement继承了DOMNode所以返回类型在手册上是采用DOMNode
输出结果如下:
2、PHPDOM查询与遍历
运行效果:
3、PHPDOM增加操作
增加四步走:
1)开辟面空间
2)载入xml到内存,形成DOM树
3)创建节点并追