李超

cc编程笔记本。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
对xml的解析一般就是 流方式,dom方式和xpath方式三种。


 

php常用的是流方式。

机制是这样的
1 创建解析器  使用 xml_parse_create 函数
$parse = xml_parser_create();


2 给解析器设置读取到tag首尾时的回调函数和读取到数据的回调函数。
xml_set_element_handler($parser, “startElement”, “endElement”);
xml_set_character_data_handle($parser, "characterData");

3 解析xml
xml_parse($parse, $data, $iseof);
第二个参数可以是一个xml片段,可以通过fopen  fread  feof  fclose等文件操作函数来打开 读取 关闭文件。
比如
$fh = fopen('article.xml','r');
while(!feof($fh))
{
  
$data = fread($fh,1024);
  
xml_parse($parse, $data, feof($fh));
}
fclose($fh);

4 释放
xml_parser_free($parse);


这样的话,重点就是三个回调函数的编写:
startElement,endElement和charactionData。

形参:

startElement($parse_instance, $element_name, $attr);
endElement($parse_instance, $element_name);
characterData($parse_instance, $xml_data);
posted on 2008-07-16 17:15  coderlee  阅读(728)  评论(0编辑  收藏  举报