2014-10-22 160 views
1

我是新手,在解析json時遇到問題。PHP JSON解析

下面是JSON數組我想分析:

array (size=3) 
    'status' => string 'success' (length=7) 
    'message' => string '' (length=0) 
    'data' => 
    array (size=2) 
     0 => 
     array (size=2) 
      'asset' => string 'ONESATOSHI' (length=10) 
      'balance' => string '0.0000001' (length=9) 
     1 => 
     array (size=2) 
      'asset' => string 'XCP' (length=3) 
      'balance' => string '150333.69737005' (length=15) 

我想獲得1

我已經嘗試了數組的平衡這一點:

function xcp_balance($wallet) 
{ 
    $jarr = json_decode(file_get_contents('http://xcp.blockscan.com/api2.aspx?module=address&action=balance&btc_address='.$wallet),true); 

    $balance = $jarr['data'][1]['balance']; 

    if (is_numeric($balance)) { 
     return $balance; 
    } else { 
     return 0; 
    } 

} 

$wallet = '1NFeBp9s5aQ1iZ26uWyiK2AYUXHxs7bFmB'; 
xcp_balance($wallet); 

但不加工。請幫助我併爲我的語言道歉。

回答

4

它的工作。你剛纔忘了回聲返回值:

function xcp_balance($wallet) { 

    $jarr = json_decode(file_get_contents('http://xcp.blockscan.com/api2.aspx?module=address&action=balance&btc_address='.$wallet),true); 
    $balance = $jarr['data'][1]['balance']; 

    if (is_numeric($balance)) { 
     return $balance; 
    } else { 
     return 0; 
    } 

} 

$wallet = '1NFeBp9s5aQ1iZ26uWyiK2AYUXHxs7bFmB'; 
echo xcp_balance($wallet); // 150333.69737005 
//^echo it 

Working here

,它可能是更好的檢查指標第一的存在!

function xcp_balance($wallet) { 

    $jarr = json_decode(file_get_contents('http://xcp.blockscan.com/api2.aspx?module=address&action=balance&btc_address='.$wallet),true); 
    $balance = (isset($jarr['data'][1]['balance']) && is_numeric($jarr['data'][1]['balance']) ? $jarr['data'][1]['balance'] : 0); 

    return $balance;  
} 
+0

非常感謝主席先生你救我脫離很多頭痛。我熱烈的問候你。 – 2014-10-22 07:12:46

+0

@ user2507910肯定沒有問題。我很高興這有幫助 – Ghost 2014-10-22 07:19:56