我正在嘗試解碼看起來像這樣的 json 回應并僅獲取 USD 的值
{"data":{"currency":"TRX","rates":{"AED":"0.22938983227","USD":"0.06245299"}}}
$url = "https://api.coinbase.com/v2/exchange-rates?currency=TRX";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // On dev server only!
$result = curl_exec($ch);
$json = json_decode($result, true);
echo $json['USD'];
但我不斷收到此錯誤訊息 - 注意:未定義的索引:C:\xampp\htdocs* * ***.php 中的美元第 19 行
uj5u.com熱心網友回復:
我認為您期望陣列的外觀與實際外觀不同。 $json['USD']不存在,但$json['data']['rates']['USD']確實存在。
您可以print_r在陣列上使用來查看它:
echo "<pre>"; print_r($json); echo "</pre>";
或者您也可以使用像http://www.bodurov.com/JsonFormatter/這樣的 json 格式化程式,我個人一直在使用它。
uj5u.com熱心網友回復:
您可以更換:
$json = json_decode($result, true);
到:
$json = json_decode($result);
并以面向物件的模式列印資料,如下所示:
echo $json->data->currency . ' > '. $json->data->rates->USD;
我希望能有所幫助
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/431204.html
