加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

PHP4和PHP5版本下解析XML文档的操作方法实例分析

发布时间:2021-01-18 23:09:52 所属栏目:编程 来源:网络整理
导读:本篇章节讲授PHP4和PHP5版本下理会XML文档的操纵要领。供各人参考研究详细如下: 在PHP网站开拓与建树进程中,时常会遇到必要对XML文档举办理会,PHP4版本自带了XML理会器(sax),PHP5版本增进了SimpleXML(基于dom)的XML扩展,对XML的理会更是

本篇章节讲授PHP4和PHP5版本下理会XML文档的操纵要领。分享给各人供各人参考,详细如下:

在PHP网站开拓与建树进程中,时常会遇到必要对XML文档举办理会,PHP4版本自带了XML理会器(sax),PHP5版本增进了SimpleXML(基于dom)的XML扩展,对XML的理会更长短常利便,本日和各人分享下在差异情形下对XML文档举办理会的要领。

XML文档

Leapsoul-PHP网站开拓 //www.52php.cn 分享PHP网站开拓与建树的爱好,教你怎样成立网站 David 2009-05-13 QQ:154130270 Leapsoul-PHP网站开拓 //www.52php.cn 分享PHP网站开拓与建树的爱好,教你怎样成立网站 David 2009-05-13 QQ:154130270

PHP5版本下SimpleXML的行使要领

LeapsoulInfo[0]->name; echo$name; foreach($info->LeapsoulInfoas$LeapsoulInfo) { echo$LeapsoulInfo->name."
"; echo$LeapsoulInfo->website."
"; echo$LeapsoulInfo->description."
"; echo$LeapsoulInfo->bloger."
"; echo$LeapsoulInfo->date."
"; echo$LeapsoulInfo->qq."
"; } foreach($info->xpath('//name')as$value){ echo$value.'
'; } foreach($info->LeapsoulInfo[0]->children()as$value){ echo$value->getName(); echo$value.'
'; } $info->LeapsoulInfo[0]->addChild('msn','MSN:davidfaithman@hotmail.com'); $info->asXML('leapsoulcn.xml');

代码注释

第1行:simplexml_load_file:读取一个xml文档作为操纵工具,可以读取当地可能长途xml文档;simplexml_load_string:读取一个xml字符串作为操纵的工具 第3行:假如不清晰怎样获取某个节点的信息,可用print_r函数打印输出查察详细的布局,simplexml理会返回的工具具稀有组布局。 第5~8行:以工具方法读取某个XML文档节点信息,读取方法:句柄->节点元素名->子节点,假如沟通的节点元素有多个,则以数组(array)方法读取

注:因为simplexml理会返回的信息是UTF8名目标,假如网站行使的是GBK的,则必要转码,你可以行使iconv函数可能其他的utf8与gbk转换函数举办操纵,如:$name = iconv('utf-8′,'gbk',$name);

第9~17行:以遍历的情势,读取全部元素下的子节点信息 第19~21行:simplexml的xpath函数是用来查询XML数据的,好比这里查询的是全部name节点的值 第23~26行:children函数是用来找寻某个特定节点下全部子节点的值。getName函数用来得到每个子节点的元素名称 第28~29行:addChild函数用来在某个特定节点下增进一个子节点;asXML函数对已做过窜改的XML文档举办生涯

点击查察更多声名。

PHP4版本自带的XML函数理会要领

代码注释

第1~15行:界说开始元素,末了元素以及元素间字符数据的处理赏罚函数 第16行:成立一个新的XML理会器并返回可被其余XML函数行使的资源句柄,输入默认编码方法为 “ISO-8859-1”。同时,支持的编码方法尚有“UTF-8”和 “US-ASCII”,输出数据编码方法是和xml_parser_create函数处界说相同等。 第18行:成立起始和终止元素处理赏罚器 第20行:成立字符数据处理赏罚器,处理赏罚元素之间的相干数据 注:XML语法理会器不会加上可能去掉任何空格,空格的弃取将由开拓者本身抉择。 第22行:启动理会器xml_parse函数第二个参数是字符型的,以是必要读取相干的XML文档信息,此处我用的是file_get_contents函数,当地长途都可行,虽然你也可以行使fopen函数 第24行:XML理会完成后,开释理会器占用的内存

自带的XML函数理会思绪

第一步:自界说开始元素,末了元素以及元素间字符数据的处理赏罚函数; 第二步:成立一个XML理会器; 第三步:成立起始和终止元素处理赏罚器; 第四步:成立字符数据处理赏罚器,处理赏罚元素之间的相干数据; 第五步:启动理会器; 第六步:XML理会完成后,开释理会器占用的内存。

总结:

总的来说PHP自带的XML理会器行使起来相等繁琐,必要有较强的逻辑,并且假如XML文档布局差异,元素、字符等3个函数必要从头界说,而在PHP5版本增进了SimpleXML扩展后,XML理会起来很是简朴,虽然假如你必要举办更伟大的XML文档理会操纵,你也可以下载安装并行使,成果相等强。

PS:这里再为各人提供几款关于xml操纵的在线器材供各人参考行使:

在线XML/JSON相互转换器材:

在线名目化XML/在线压缩XML:

XML

在线压缩/名目化器材:

XML

代码在线名目化美化器材:

更多关于PHP相干内容感乐趣的读者可查察本站专题:《》、《》、《》、《》、《》、《》、《》及《》

但愿本文所述对各人PHP措施计划有所辅佐。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读