sam怎样解析xml 有详细注释

<?php
//创建xml解析器,参数是编码
$parser=xml_parser_create('utf-8');                                      //第一步:创建xml解析器,参数是编码
//规定解析器如何处理我们遇到的标签和数据
/*参数:
参数1,创建的解析器名称
参数2,遇到开始标签的处理函数
参数3,遇到结束标签的处理函数
*/
xml_set_element_handler($parser,'start_element','end_element');         //第二步:规定解析器如何处理我们遇到的标签和数据
/*
   遇到开始标签怎样处理
   参数1,解析器
   参数2,开始标签的名字
   参数3,属性名
*/
function start_element($parser,$name,$attr){                    
 echo "开始标签".$name.'<br />';
 }
 /*
   遇到结束标签怎样处理
   参数1,解析器
   参数2,开始标签的名字
*/
function end_element($parser,$name){
 echo "结束标签".$name.'<br />'; 
 }
/*
 遇到数据后怎样处理
*/
xml_set_character_data_handler($parser,'data_process');                  //第三步:遇到数据后怎样处理
/*遇到数据之后的处理
 参数1,处理器
 参数2,遇到的数据
*/
function data_process($parser,$data){
 echo "数据是:".$data."<br />";
 }

//开始解析  注意:这里解析的是xml文件的内容,不是文件名
//现货的远程文件内容
/*
 参数1,解析器名
 参数2,处理的xml的内容
 参数3,标签数据是否已经处理完毕,如不写解析器会一直等待
*/
$xml_data = file_get_contents('../config.xml');                          //第四步:xml文件的读取
$res=xml_parse($parser,$xml_data,true);                                  //第五步:按照以上规则,开始解析xml文件
//如果有错误,怎样处理
if($res){echo "解析成功";}else                                            
{//有错误,获得错误代码,输出错误信息
  xml_error_string(xml_get_error_code($parser));                         //第六步:错误信息的处理
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值