2010-11-18 100 views
1

我试图在php文件中解析来自世界银行api的一些数据。我使用的是使用simplexml_load_file摆脱这样的URL的XML:http://api.worldbank.org/countries/indicators/IT.NET.BBND.P3?per_page=100&date=1981:2010用simplexml_load_file从api解析xml

但我似乎无法输出的数据,我想使用foreach循环喜欢这里:

$requestUrl = "http://api.worldbank.org/countries/indicators/IT.NET.BBND.P3?per_page=100&date=1981:2010";

$xml = simplexml_load_file($requestUrl); 

foreach($xml->data as $i) { 
    echo $i->country; 
    echo $i->date; 
    echo $i->value; 
} 

从阅读我已经做到这一点应该工作,但它没有,请有人可以帮助我吗?

由于

+0

欢迎SO。发生了什么或没有发生?你会得到什么错误? – 2010-11-18 23:36:25

+0

您可以在您的foreach之前执行'print_r($ xml);'在这里输出结果吗?另外,当你尝试上面的代码时,你会得到什么错误? – 2010-11-18 23:46:37

回答

0
<?php 

$ns='wb'; 

$xml = simplexml_load_file($requestUrl); 

foreach($xml->children($ns,true) as $i) { 
    echo $i->country; 
    echo $i->date; 
    echo $i->value; 
} 

?> 

http://php.net/manual/en/simplexmlelement.children.php(参见:实施例#2使用命名空间)

+0

辉煌 - 完美工作,谢谢Stewe! – mattholl 2010-11-19 23:20:45