- 1、本文档共63页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PHP与XML概要
第15章 PHP与XML 15-1 XML与PHP的基础 15-2 PHP与DOM 15-3 PHP与XPath 15-4 PHP与SAX 15-5 使用XSLT输出HTML文件 15-6 SimpleXML 15-1 XML与PHP的基础-说明 XML程序设计就是设计应用程序来存取XML文件的架构与内容。 程序使用XML剖析器(XML Parsers)来分析XML文件架构,以便XML应用程序可以存取XML架构和内容。 15-1 XML与PHP的基础-剖析器种类 树状基础的剖析器(Tree-based Parser):将XML文件转换成树状结构,剖析器需要分析完整份XML文件后,才能建立树状结构,提供相关界面物件来存取树状结构的节点,例如:第15-2节的DOM(Document Object Model)。 事件基础的剖析器(Event-based Parser):XML文件的处理如同读取文字档案的过程,在读取内容时触发一系列事件,应用程序提供函数处理这些事件,以便存取XML内容,例如:第15-4节的SAX(Simple API for XML)。 15-1 XML与PHP的基础-PHP 5与XML PHP 4的DOM并不是W3C标准的DOM界面物件,再加上执行效能不佳和多种扩充程序之间的沟通问题。 PHP 5的XML功能已经全部使用libxml2函式库来改写DOM、SAX和XSLT,支援W3C标准的DOM界面物件和XPath,新增SimpleXML扩充功能,可以使用一种更简单的方式来存取XML文件。 15-2 PHP与DOM 15-2-1 DOM的基础 15-2-2 载入与验证XML文件 15-2-3 存取DOM的XML元素和属性 15-2-4 在DOM走访与浏览XML元素 15-2-5 新增XML元素和属性 15-2-6 删除XML元素和属性 15-2-1 DOM的基础-说明 「DOM」(Document Object Model)物件模型可以将XML文件转换成一棵节点(Nodes)组成的树状结构,提供节点的相关属性和方法,存取元素内容,或新增、删除和修改节点内容。 DOM属于XML文件程序设计的标准界面物件,可以将XML文件视为树状结构的节点。 DOM是W3C的建议规格,提供各种程序语言标准程序设计界面的属性、方法和物件,程序设计者能够透过DOM浏览XML文件、新增、删除和修改节点资料。 15-2-1 DOM的基础-特点 DOM Level 1在1998年10月1日成为W3C的标准建议规格,DOM Level 2是2000年11月,其特点如下所示: DOM支援JavsScript、VBScript、Perl、Visual Basic、Delphi、C++、PHP和Java等程序语言。 DOM可以建立与平台和语言无关的资料架构,将HTML或XML文件都使用标准的DOM节点来表示。 DOM支援DTD、XML Schema等XML文件验证。 15-2-1 DOM的基础-DOM界面物件 PHP程序在使用XML剖析器载入XML文件后,就可以使用DOM「界面」(Interface)物件处理XML文件的元素和属性,将XML文件内容视为树状结构的节点,主要的界面物件,如下表所示: 15-2-1 DOM的基础-DOM节点的树状结构 XML剖析器在载入XML文件后,DOM将XML文件的元素视为树状结构的节点,常见节点类型的XML常数,如下表所示: 15-2-1 DOM的基础-DOM节点的树状结构(图例) 15-2-2 载入与验证XML文件-说明 对于PHP的XML剖析器来说,XML文件在转换成树状结构之后,就是一个DOMDocument物件,由各种DOMNode节点物件组合成的一个物件集合。 15-2-2 载入与验证XML文件-载入XML文件 在PHP程序载入XML文件是使用DOMDocument物件的方法。首先建立DOMDocument物件,如下所示: $dom = new DOMDocument(); 在设定剖析器的相关参数后,就可以载入XML文件,如下所示: $doc-preserveWhiteSpace = false; if ( $dom-load(book.xml) ) { } 15-2-2 载入与验证XML文件- DOMDocuement物件属性 DOMDocuement物件提供相关属性设定剖析器参数,如下表所示: 15-2-2 载入与验证XML文件-验证XML文件(说明) XML提供文件验证机制来检查XML文件是否符合自行定义的结构、标签和属性规则,常用的验证方式有两种,如下所示: DTD:DTD原来是SGML的语法检查,XML 1.0版支援DTD验证方式,DTD定义的规则可以帮助XML剖析器检查XML文件的内
文档评论(0)