{
USD_INR: {
2017-12-31: 63.830002
},
INR_USD: {
2017-12-31: 0.015667
}
}
我尝试过以下方法,
$url = file_get_contents("https://free.currencyconverterapi.com/api/v5/convert?q=USD_INR,INR_USD&compact=ultra&date=2017-12-31");
$result = json_decode($url);
echo $result->USD_INR;
但它确实有效,任何人都可以帮助我做错的地方。
答案 0 :(得分:1)
您可以在true
上添加json_decode
作为第二个参数,以使其成为关联数组。
$url = file_get_contents("https://free.currencyconverterapi.com/api/v5/convert?q=USD_INR,INR_USD&compact=ultra&date=2017-12-31");
$result = json_decode($url, true);
并将其视为:
echo $result["USD_INR"]["2017-12-31"];
这将导致:63.830002
Doc:http://php.net/manual/en/function.json-decode.php
您可以foreach
循环获取所有值
$url = file_get_contents("https://free.currencyconverterapi.com/api/v5/convert?q=USD_INR,INR_USD&compact=ultra&date=2017-12-31");
$result = json_decode($url, true);
foreach ( $result as $value ) {
foreach ( $value as $date => $rate ) {
echo $date . ": " . $rate . "<br />";
}
}
这将导致:
2017-12-31: 63.830002
2017-12-31: 0.015667
答案 1 :(得分:1)
只需在$todaysDate
变量中传递您想要价格的日期。
$todaysDate = "2017-12-31";
$url = file_get_contents("https://free.currencyconverterapi.com/api/v5/convert?q=USD_INR,INR_USD&compact=ultra&date=$todaysDate");
$result = json_decode($url);
echo ($result->USD_INR->$todaysDate);
答案 2 :(得分:1)
您正在尝试回显对象,使用print_r
这样打印USD_INR
$url = '{"USD_INR":{"2017-12-31":63.830002},"INR_USD":{"2017-12-31":0.015667}}';
$result = json_decode($url);
print_r($result->USD_INR);
OR以回显2017-12-31
USD_INR
的值
$url = '{"USD_INR":{"2017-12-31":63.830002},"INR_USD":{"2017-12-31":0.015667}}';
$result = json_decode($url);
echo $result->USD_INR->{'2017-12-31'};
使用{'2017-12-31'}
,因为2017-12-31
不合适variable name