您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

你知道什么是XML Expat吗?他又是怎样定义的呢?

2024/3/27 16:25:55发布17次查看
上篇文章给大家介绍了《如何用php mysql 进行数据连接?》,本文继续给大家介绍关于php xml expat,不知道你们对于xml感不感兴趣嘞?那就一起出发看看吧!!!
什么是xml:
xml 用于描述数据,其焦点是数据是什么。xml 文件描述了数据的结构。php xml expat。
在xml中,没有预定义的标签,必须定义自己的标签。
expat 是什么?
如需读取和更新 - 创建和处理 - 一个 xml 文档,用户需要 xml 解析器。
有两种基本的 xml 解析器类型:
基于树的解析器:这种解析器把 xml 文档转换为树型结构。它分析整篇文档,并提供了对树中元素的访问,例如文档对象模型 (dom)。
基于事件的解析器:将 xml 文档视为一系列的事件。当某个具体的事件发生时,解析器会调用函数来处理。
expat 解析器是基于事件的解析器。
基于事件的解析器集中在 xml 文档的内容,而不是它们的结构。正因为如此,基于事件的解析器能够比基于树的解析器更快地访问数据。
请看下面的 xml 片段:
<from>jani</from>
开始元素:from
开始 cdata 部分,值:jani
关闭元素:from
上面的 xml 实例包含了形式良好的 xml。不过这个实例是无效的 xml,因为没有与它关联的文档类型声明 (dtd)。
然而,在使用 expat 解析器时,这没有区别。expat 是不检查有效性的解析器,忽略任何 dtd。
作为一款基于事件、非验证的 xml 解析器,expat 快速且轻巧,十分适合 php 的 web 应用程序。
注释:xml 文档必须形式良好,否则 expat 会生成错误。
安装:
xml expat 解析器函数是 php 核心的组成部分。无需安装就可以使用这些函数。
xml 文件
下面的 xml 文件将应用在我们的实例中:
<?xml version="1.0" encoding="iso-8859-1"?><note><to>tove</to><from>jani</from><heading>reminder</heading><body>don't forget me this weekend!</body></note>
初始化 xml 解析器
我们要在 php 中初始化 xml 解析器,为不同的 xml 事件定义处理器,然后解析这个 xml 文件。
具体代码如下:
<?php//initialize the xml parser$parser=xml_parser_create();//function to use at the start of an elementfunction start($parser,$element_name,$element_attrs) { switch($element_name) { case "note": echo "-- note --<br>"; break; case "to": echo "to: "; break; case "from": echo "from: "; break; case "heading": echo "heading: "; break; case "body": echo "message: "; } }//function to use at the end of an elementfunction stop($parser,$element_name) { echo "<br>"; }//function to use when finding character datafunction char($parser,$data) { echo $data; }//specify element handlerxml_set_element_handler($parser,"start","stop");//specify data handlerxml_set_character_data_handler($parser,"char");//open xml file$fp=fopen("test.xml","r");//read datawhile ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) or die (sprintf("xml error: %s at line %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); }//free the xml parserxml_parser_free($parser);?>
以上代码将输出:
推荐学习:《php视频教程》
以上就是你知道什么是xml expat吗?他又是怎样定义的呢?的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product