2016-11-03 7 views
0

現在、カンマ区切りの文字列で過去30日間のすべてのビットコインの価格を取得しようとしています。JSONレスポンスからカンマ区切り配列を取得する方法は?

たとえば、coinbase apiから価格をhttps://api.coinbase.com/v2/prices/btc-eur/spot?date=11.03.2016経由で取得しています。

私がしたのは、過去30日間の各日付をAPIリンクに挿入し、すべての価格で長い文字列を表示するforループです。私はその文字列の各価格をカンマ区切りにしたいと思っています。現在、ここで

コード:

<?php 

for($i=1; $i<=30; $i++) 
{ 
    $pricedates = date('Y-m-d', strtotime('-'.$i.' days',strtotime(date('Y-m-d')))); 



//Coinbase API for Historical Rates 

    // Get data from Coinbase API 
    $url  = "https://api.coinbase.com/v2/prices/btc-eur/spot?date=".$pricedates.""; 
    $btcdata = @file_get_contents($url); 
    $btcdata = json_decode($btcdata, true); 

    $btcprice = $btcdata['data']['amount']; 

} 

?> 

サンプル・データ

{"data":{"amount":"661.45","currency":"EUR"},"warnings":[{"id":"missing_version","message":"Please supply API version (YYYY-MM-DD) as CB-VERSION header","url":"https://developers.coinbase.com/api#versioning"}]} 
+1

あなたの問題はどこですか? – Jeff

+0

あなたは最初に少なくとも試してみる必要があります。あなたのためにコードを書く人々のためではないので、解決するバグはありません。 –

+0

私の問題は、 "$ btcprice"から得られる文字列がカンマ区切りではないことです。過去30日のサイドサイドのすべてのビットコインを含む単なる文字列です。 – N1njaWTF

答えて

1

あなたは$btcprice[] = $btcdata['data']['amount'];$btcprice = $btcdata['data']['amount'];を変更する場合は、すべての30個の値を持つ配列になってしまいます。

次に、implode()を使用して配列の部分を文字列に接着することができます。 $btcprices_str = implode(',', $btcprice);

関連する問題