如何从 API xml 获取节点值
How to get node value from the API xml
我正在尝试从 API 获取货币汇率。代码如下
<?php
$return = file_get_contents("http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.xchange%20where%20pair%20in%20%28%22AEDUSD%22%29&env=store://datatables.org/alltableswithkeys");
$xml=simplexml_load_string($return) or die("Error: Cannot create object");
echo '<pre>'; print_r($xml);
?>
以上代码提供了XML
SimpleXMLElement Object
(
[results] => SimpleXMLElement Object
(
[rate] => SimpleXMLElement Object
(
[@attributes] => Array
(
[id] => AEDUSD
)
[Name] => AED/USD
[Rate] => 0.2722
[Date] => 7/14/2015
[Time] => 7:17am
[Ask] => 0.2723
[Bid] => 0.2722
)
)
)
我想获取 Rate 节点值 [Rate] => 0.2722
我在下面尝试过
<?php
echo '<pre>'; print_r($xml->results->rate->Rate);
?>
结果如下,
SimpleXMLElement Object
(
[0] => 0.2722
)
如何去掉Object并取值?
尝试阅读这个问题how to get value of simple xml object
将其转换为字符串
echo '<pre>'; print_r((string)$xml->results->rate->Rate);
我正在尝试从 API 获取货币汇率。代码如下
<?php
$return = file_get_contents("http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.xchange%20where%20pair%20in%20%28%22AEDUSD%22%29&env=store://datatables.org/alltableswithkeys");
$xml=simplexml_load_string($return) or die("Error: Cannot create object");
echo '<pre>'; print_r($xml);
?>
以上代码提供了XML
SimpleXMLElement Object
(
[results] => SimpleXMLElement Object
(
[rate] => SimpleXMLElement Object
(
[@attributes] => Array
(
[id] => AEDUSD
)
[Name] => AED/USD
[Rate] => 0.2722
[Date] => 7/14/2015
[Time] => 7:17am
[Ask] => 0.2723
[Bid] => 0.2722
)
)
)
我想获取 Rate 节点值 [Rate] => 0.2722
我在下面尝试过
<?php
echo '<pre>'; print_r($xml->results->rate->Rate);
?>
结果如下,
SimpleXMLElement Object
(
[0] => 0.2722
)
如何去掉Object并取值?
尝试阅读这个问题how to get value of simple xml object
将其转换为字符串
echo '<pre>'; print_r((string)$xml->results->rate->Rate);