2017-09-23 60 views
0

我想簡單地採取從這個API顯示來自「最後」的數據: https://bittrex.com/api/v1.1/public/getticker?market=usdt-btc使用捲曲解碼和回聲一個RESTful API響應

這裏是我到目前爲止,但它沒有返回任何東西。我不是一個有經驗的開發人員,並且從幾個不同的來源拼湊出這些代碼。任何幫助是極大的讚賞。

<?php 

$service_url = 'https://bittrex.com/api/v1.1/public/getticker?market=usdt-btc'; 
$curl = curl_init($service_url); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
$curl_response = curl_exec($curl); 
$decoded = json_decode($curl_response); 

echo $decoded->Last; 

?> 

回答

1

您的代碼有效。但是你必須檢查JSON響應是否正確。如果你想得到「最後」,你首先必須得到結果。

這是JSON解碼從您的代碼響應:

object(stdClass)#1 (3) { 
    ["success"]=> 
    bool(true) 
    ["message"]=> 
    string(0) "" 
    ["result"]=> 
    object(stdClass)#2 (3) { 
    ["Bid"]=> 
    float(3760) 
    ["Ask"]=> 
    float(3765) 
    ["Last"]=> 
    float(3765) 
    } 
} 

所以,你將不得不回聲 「$ decoded-> result->最後」

0

$decoded回報標準的對象,所以你不能直接打印使用回聲。如果您打印解碼的可變然後

<?php 
$service_url = 'https://bittrex.com/api/v1.1/public/getticker?market=usdt-btc'; 
$curl = curl_init($service_url); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
$curl_response = curl_exec($curl); 
$decoded = json_decode($curl_response); 

echo "<pre>"; 
print_r($decoded); 

?> 

結果:

stdClass Object 
(
    [success] => 1 
    [message] => 
    [result] => stdClass Object 
     (
      [Bid] => 3741.5957385 
      [Ask] => 3745 
      [Last] => 3745 
     ) 

) 

這樣你就可以訪問

echo $decoded->success; //return 1 
echo $decoded->result->Bid; //3741