你可以使用SimpleXML到load a remote url xml文件。
然后你可以使用foreach循环所有的数据。
例子:
$context = stream_context_create(array('http' => array('header' => 'Accept: application/xml')));
$url = 'https://www.predictit.org/api/marketdata/all/';
$xml = file_get_contents($url, false, $context);
$elements = simplexml_load_string($xml);
foreach ($elements->Markets->MarketData as $marketData) {
echo $marketData->TickerSymbol . "<br>";
foreach ($marketData->Contracts->MarketContract as $contract) {
echo "-" . $contract->TickerSymbol . "<br>";
}
}
会导致:
VAGOV17
-DEM.VAGOV17
-GOP.VAGOV17
NJGOV17
-DEM.NJGOV17
-GOP.NJGOV17
MAYOR.NYC2017
-BDB.MAYOR.NYC2017
-WEINER.MAYOR.NYC2017
-QUINN.MAYOR.NYC2017
-STRINGER.MAYOR.NYC2017
等。
你尝试过什么?你得到它的确切的错误,而这样做?这不是免费的编码服务。 – Mjh
'$ xml ='<?xml version =“1.0”encoding =“utf-8”?>'。@ file_get_contents('https://www.predictit.org/api/marketdata/all/'); $ dom = new DOMDocument; $ dom - > loadXML($ xml); $ books = $ dom-> getElementsByTagName('TickerSymbol'); foreach($ books as $ book){ echo $ book-> nodeValue,PHP_EOL; } DOMDocument :: loadXML():开始标记预期,'<'实体中找不到,行:1在test_20171008.php上行26 –