PHP中XML解析与转换全解析
1. PHP中XML解析基础
在PHP里进行XML处理时,其内置的XML解析器是基于Expat库的。标准的PHP 4.x发行版包含了Expat的源码以及用于处理XML的PHP扩展。在配置和构建系统时,XML默认是启用的。
在处理XML文档时,有两个要点需要注意:
- Unicode编码 :XML文档采用Unicode编码,这能让文档包含超出常见127个ASCII字符范围的字符。例如,它可以包含带重音的罗马字符、汉字、韩文以及其他远东语言的字符,还有印度和中东字符等。PHP的XML扩展在处理Unicode编码的XML字符时,输入和输出采用不同的字符编码。默认输入编码是ISO - 8859 - 1,它与大多数计算机平台支持的基本罗马字符集相近,前127个字符与ASCII集匹配,所以多数基于ASCII或文本的文档无需更改编码即可解析。输出编码用于将信息传递给配置好的实体处理函数,会影响从标签名到字符数据等所有传递给实体处理函数的实体方面。若处理输入编码时出现错误(如字符与设置的输入编码不匹配),会引发错误;若输入编码无法转换为所需的输出编码,字符将被问号替代。
- 标签大小写 :XML文档中的标签大小写没有标准,XML标准允许使用小写、大写或混合大小写的标签。默认情况下,PHP的XML扩展会对标签进行大小写折叠,传递给实体处理函数的标签参数会以大写形式接收。不过,可以通过选项来控制这一行为。
2. XML解析器的初始化设置
核心函数 xml_parser_create() 用于创建一个新的XML解析器实例。
超级会员免费看
订阅专栏 解锁全文
1267

被折叠的 条评论
为什么被折叠?



