我使用以下加載存儲在不同的服務器上的遠程XML文件..cURL加載跨域遠程XML - 如何讀取和格式化?
<?php $curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_URL, "http://pathtofile.com/data.xml");
$xml = curl_exec($curl);
curl_close($curl);
?>
正如你所看到的,結果被存儲在$ XML字符串。
我可以通過使用broswer顯示此:
<?php echo $xml; ?>
但我需要選擇和數據格式的特定部分。
我知道這是可以做到的,而且我已經閱讀了大量關於如何通過xmlhttp和其他方式完成這些任務的文章,但是我無法找到特定於我的需求的方法,因爲我的XML文件現在基本上一個PHP字符串。
我同類的功能如下JS腳本後,我(如果XML文件被存儲在本地這會工作得很好,但像我是不是不工作):
<script>
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","http://pathtofile.com/data.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
document.write("<table border='1'>");
var x=xmlDoc.getElementsByTagName("event");
for (i=0;i<x.length;i++)
{
document.write("<tr><td>");
document.write(x[i].getElementsByTagName("date")[0].childNodes[0].nodeValue);
document.write("</td><td>");
document.write(x[i].getElementsByTagName("name")[0].childNodes[0].nodeValue);
document.write("</td></tr>");
}
document.write("</table>");
</script>
有人可以指出我正確的方向或提供一個例子嗎?我只是不確定如何調用$ xml字符串以用於這種方式。
乾杯!