SAM解析XML的经典笔记(1)
SAX
simple API for XML:简单的XML的应用程序接口:
什么是API:
Application Progam Interface 应用程序接口:
Windows操作系统的发展:应用程序 和 操作系统进行交流的一个接口
现在说的API ,系统(软件)封装的一些函数(类库),我们编写的程序只管调用他们就行
Windows操作系统
新浪API 微博API
Simple API for XML:
XML给我们封装的一些常用的函数(类库)
原理:
XML解析器 遇到一个标签解析这个标签,遇到一个数据解析一个数据,解析完之后,处理数据
DOM-----------在内存中生成一个节点树,如果这个XML文件特别大的话,非常占内存
SAX -------- 不在内存中生成节点树
需要用到的函数:
1,xml_parser_create();
2,xml_set_element_handler() 遇到标签怎么处理
3,xml_set_character_data_handler()遇到数据怎么处理
4,xml_parse()
5,xml_get_error_code()获得错误的代码(几号错误)
Xml_error_string() 根据错误编号显示对应的错误信息
练习题:
分别获得所有的title内容 和author内容
书名和作者
CDATA
一般在XML文档中,数据部分有中文和单词,或者实体引用时,用<![CDATA[]]>
包起来
PHP提供的一种简单的处理XML的方法
先将XML元素在内存中生成对象,相同的元素,在内存中生成对象集合
步骤:
1,实例化simpleXML对象
参数为XML文件的内容 file_get_contents()获得
这个对象可以理解为文档的根节点
2,访问节点:
某个元素 直接访问该元素名即可
元素属性
XPath是用来在XML文档中对元素和属性进行遍历
1,现有DOMDocument对象
2,XPath的操作是通过DOMXpath对象来完成的
3,实例化这个DOMXpath对象,参数为DOMDocument对象
这个时候,将DOMXPath对象与DOMDocument对象关联起来,因为我们要在这个查找
XPath是一门在XML中查找信息的语言,它可以用来对元素和属性进行遍历
XML path XML文档的路径
2,查询
我们将查询方法称之为查找规则
根据相应的规则找到相应的元素
$Xpath ->query();根据某个规则去查找
XPath的相应的规则
//利用元素名查找元素
按照位置查找
/经过的位置1/经过的位置2/查找的
按照集合中的索引来查找
此处的索引值为1