我想從使用PHP的外部鏈接加載XML,然後將XML文件傳遞給我的瀏覽器,我用jQuery解析它。用PHP加載XML,通過XML到瀏覽器
我想從這個鏈接加載XML: http://api.stlouisfed.org/fred/series/observations?series_id=GDP&api_key=f59d7e0739a5b0745a987b34993bdea7
感謝您的幫助!
我想從使用PHP的外部鏈接加載XML,然後將XML文件傳遞給我的瀏覽器,我用jQuery解析它。用PHP加載XML,通過XML到瀏覽器
我想從這個鏈接加載XML: http://api.stlouisfed.org/fred/series/observations?series_id=GDP&api_key=f59d7e0739a5b0745a987b34993bdea7
感謝您的幫助!
1 - 製作一個PHP函數從鏈路
function getXML() { $out = file_get_contents("http://api.stlouisfed.org/fred/series/observations?series_id=GDP&api_key=f59d7e0739a5b0745a987b34993bdea7"); echo $out; }
2-將它保存在文件並將其命名例如XMLGetter.php
3-使用一個jquery函數來獲取從所述文件中的數據並解析它
$.ajax({ type: "GET", url: "XMLGetter.php", dataType: "xml", success: function(xml) { //parse XML here } });
這是SimpleXML的如何使用示例:
<?php
$xml = simplexml_load_file("test.xml");
echo $xml->getName() . "<br />";
foreach($xml->children() as $child)
{
echo $child->getName() . ": " . $child . "<br />";
}
?>
您需要獲得該URL轉換爲字符串(simplexml_load_string($ loadedString);),並在結束時,你可以通過渲染它:
echo $xml->asXML();
我可能是一個這裏有點愚蠢...... 爲什麼不直接從網站加載XML到瀏覽器? 即
[api.stlousfed.org] ---> [browser]
,而不是
[api.stlousfed.org] ---> [your_server] ---> [browser]
Alternayively東西你可以讓你的生活在JavaScript是加載XML你的服務器上,解析它,並將其轉換爲一個明智的JSON的瀏覽器更容易表示。然後,您可以緩存JSON並將其發送到瀏覽器。這將是更小的文件發送,更快的瀏覽器解析和更有意義的工作在JavaScript中。
同源策略 –
http://james.padolsey.com/javascript/cross-domain-requests-with-jquery/ < - work around –
問題是什麼? –