重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
无论是返回 json 还是 xml 数据,区别仅在于数据的格式。
成都创新互联公司于2013年创立,是专业互联网技术服务公司,拥有项目成都网站设计、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元鸡西梨树做网站,已为上家服务,为鸡西梨树各地企业和个人服务,联系电话:13518219792
返回 xml 格式数据示例如下:
?php
//指示返回数据格式为 xml
header('Content-Type: text/xml');
?
?xml version="1.0" encoding="utf-8" ?
?php
//构造 xml
//$xmldata = "
// data
// site_name$site[name]/site_name
// ........
// data";
echo $xmldata;
?
php解析xml报文的方法是DOMDocument:
解析方法如下:
$xmlstring = XML
?xml version='1.0'?
document
cmd attr='default'login/cmd
loginimdonkey/login
/document
XML;
$dom = new DOMDocument();
$dom-loadXML($xmlstring);
print_r(getArray($dom-documentElement));
function getArray($node) {
$array = false;
if ($node-hasAttributes()) {
foreach ($node-attributes as $attr) {
$array[$attr-nodeName] = $attr-nodeValue;
}
}
if ($node-hasChildNodes()) {
if ($node-childNodes-length == 1) {
$array[$node-firstChild-nodeName] = getArray($node-firstChild);
} else {
foreach ($node-childNodes as $childNode) {
if ($childNode-nodeType != XML_TEXT_NODE) {
$array[$childNode-nodeName][] = getArray($childNode);
}
}
}
} else {
return $node-nodeValue;
}
return $array;
}
如果你使用 curl 获取的 xml data
simplexml_load_string() 函数把 XML 字符串载入对象中。
$xml = simplexml_load_string($xmlStr);
$json = json_encode($xml);
如果是直接获取 URL 数据的话
$xml = simplexml_load_file($data);
$json = json_encode($xml);