- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用PHP生成和获取XML格式数据.doc
使用PHP生成和获取XML格式数据在做数据接口时,我们通常要获取第三方数据接口或者给第三方提供数据接口,而这些数据格式通常是以XML或者JSON格式传输,本文将介绍如何使用PHP生成XML格式数据供第三方调用以及如何获取第三方提供的XML数据。
生成XML格式数据
我们假设系统中有一张学生信息表student,需要提供给第三方调用,并有id,name,sex,age分别记录学生的姓名、性别、年龄等信息。
?
CREATE?TABLE?`student`?(?
??`id`?int(11)?NOT?NULL?auto_increment,?
??`name`?varchar(50)?NOT?NULL,?
??`sex`?varchar(10)?NOT?NULL,?
??`age`?smallint(3)?NOT?NULL?default?0,?
??PRIMARY?KEY??(`id`)?
)?ENGINE=MyISAM??DEFAULT?CHARSET=utf8;?
首先,建立createXML.php文件,先连接数据库,获取数据。
?
include_once?(connect.php);?//连接数据库?
?
$sql?=?select?*?from?student;?
$result?=?mysql_query($sql)?or?die(Invalid?query:??.?mysql_error());?
while?($row?=?mysql_fetch_array($result))?{?
????$arr[]?=?array(?
????????name?=?$row[name],?
????????sex?=?$row[sex],?
????????age?=?$row[age]?
????);?
}?
这个时候,数据就保存在$arr中,你可以使用print_r打印下数据测试。
接着,建立xml,循环数组,将数据写入到xml对应的节点中。
?
$doc?=?new?DOMDocument(1.0,?utf-8);??//?声明版本和编码?
$doc-formatOutput?=?true;?
?
$r?=?$doc-createElement(root);?
$doc-appendChild($r);?
?
foreach?($arr?as?$dat)?{?
????$b?=?$doc-createElement(data);?
?
????$name?=?$doc-createElement(name);?
????$name-appendChild($doc-createTextNode($dat[name]));?
????$b-appendChild($name);?
?
????$sex?=?$doc-createElement(sex);?
????$sex-appendChild($doc-createTextNode($dat[sex]));?
????$b-appendChild($sex);?
?
????$age?=?$doc-createElement(age);?
????$age-appendChild($doc-createTextNode($dat[age]));?
????$b-appendChild($age);?
?
????$r-appendChild($b);?
}?
?
echo?$doc-saveXML();?
我们调用了PHP内置的类DOMDocument来处理与生成xml。最终生成的xml格式
?
?xml?version=1.0?encoding=utf-8???
root??
??data??
????name李王皓/name??
????sex男/sex??
????age21/age??
??/data?
??...?
/root?
获取XML格式数据
现在我们假设要从第三方获取学生信息,数据格式是XML,我们需要使用PHP解析XML,然后将解析后的数据显示或者写入本地数据库。而这里关键的一步是解析XML。
PHP有很多中方法可以解析XML,其中PHP提供了内置的XMLReader类可以循序地浏览过xml档案的节点,你可以想像成游标走过整份文件的节点,并抓取需要的内容。使用XMLReader是高效的,尤其是读取非常大的xml数据,相对其他方法,使用XMLReader消耗内存非常少。
?
header(Content-type:text/html;?Charset=utf-8);??
$url?=?/demo/importXML/createXML.php;???
$reader?=?new?XMLReader();??//实例化XMLReader?
$re
您可能关注的文档
最近下载
- 人教版(PEP)新教材小学四年级英语上册Unit 4-5 第二次月考测试卷.docx VIP
- ICU获得性衰弱讲课件.pptx VIP
- 人教版(PEP)新教材小学四年级英语上册Unit 5 单元综合测试卷.docx VIP
- 国家开放大学《药物治疗学(本)》形考作业1-4参考答案.pdf
- PLC应用数字电子钟设计-毕业论文.doc
- 瑞幸咖啡组织设计架构解析.pptx VIP
- 陕2012TJ 020《建筑绝热用白色无甲醛玻璃棉板外墙外保温建筑构造》.pdf VIP
- 协会成立大会演讲稿.doc VIP
- 融合新闻:通往未来新闻之路-暨南大学-中国大学MOOC慕课答案.pdf VIP
- 【基于杜邦分析法对顺丰控股公司的盈利能力分析案例11000字】.doc VIP
原创力文档


文档评论(0)