您的位置:首页 > 编程语言 > PHP开发

php中xml数据接口如何生成及调用

2016-04-08 19:03 691 查看
什么是xml?

可扩展标记语言标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言
在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如文章等。它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 它非常适合万维网传输,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。是Internet环境中跨平台的、依赖于内容的技术,也是当今处理分布式结构信息的有效工具。早在1998年,W3C就发布了XML1.0规范,使用它来简化Internet的文档信息传输。

首先,创建一个sheng_xml.php文件,在php文件中:

定义一个json的头部,把得到的json数据转换为普通数组

代码:

header('content-type:application/json;charset=utf8');

$url="http://zphteach.com/zph/8wei/json/json.php";

$html=file_get_contents($url);

$arr=json_decode($html,true);
然后,定义并输出xml数据文件的文件头,通过foreach循环添加自定义双标签,最后输出

代码如下:

echo '<?xml version="1.0" encoding="utf8" ?> ';

echo header('content-type:text/xml;');
echo "<result>";
foreach ($arr as $k1 => $v1) {
echo "<result$k1>";
foreach ($v1 as $k2 => $v2) {

echo "<$k2>".str_replace("<","<",$v2)."</$k2>";
//echo "<$k2>$v2</$k2>";

}
echo "</result$k1>";
}
echo "</result>";


注意:父标签不能重复,只有一对!

这样xml接口就生成了,那么如何获取接口中的数据

定义一个文件getxml.php,在文件中定义文件路径URL,通过函数simplexml_load_file()获得远端文件的标签格式,

通过函数转换为json数据,并输出

代码如下:

<?php
//header('content-type:text/xml;charset=utf-8');

$url='http://www.seven.com/json_sheng/xml.xml';

$xml=simplexml_load_file($url);

$xml1=json_encode($xml);

//echo $xml1;die;

$xml2=json_decode($xml1,true);

print_r($xml2);
这样就得到数据了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: