PHP JSON解析

PHP JSON解析,php,arrays,json,Php,Arrays,Json,我是个新手,在解析json时遇到了问题 下面是我要解析的json数组: array (size=3) 'status' => string 'success' (length=7) 'message' => string '' (length=0) 'data' => array (size=2) 0 => array (size=2) 'asset' => string 'ONESATOSH

我是个新手,在解析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);

但它不起作用。请帮助我,并为我的语言道歉。

它起作用了。您只是忘记回显返回的值:

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

最好先检查该索引是否存在:

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;    
}

它起作用了。您只是忘记回显返回的值:

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

最好先检查该索引是否存在:

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;    
}

非常感谢,先生!您使我免于很多头痛。我向您致以亲切的问候。@user2507910当然没有问题。我很高兴这对汉克斯很有帮助,先生!您使我免于很多头痛。我向您致以亲切的问候。@user2507910当然没有问题。我很高兴这有帮助