duanhe1903
duanhe1903
2013-02-08 11:30
浏览 43

使用php从SQL服务器生成json数组

So, my problem here is this: I am trying to follow up a tutorial in order to create an app, but i'm stuck at the part of json array...

So what i need is to create something like this:

{
    "contacts": [
        {
                "id": "c200",
                "name": "Ravi Tamada",
                }
        },
        {
                "id": "c201",
                "name": "Johnny Depp",

                }
        },

  ]
}

While, with what i've done, i get something like this:

[{"ID":"1","SPECIFIKIME":"12,9916,7165,1747,6973","IDPEMA":"119"}][{"ID":"2","SPECIFIKIME":null,"IDPEMA":"110"}]

My code is this:

while( $row = odbc_fetch_array($res) ) {
$return_arr = array();


    $row_array['ID'] = $row['ID'];
    $row_array['SPECIFIKIME'] = $row['SPECIFIKIME'];
    $row_array['IDPEMA'] = $row['IDPEMA'];

    array_push($return_arr,$row_array);

echo json_encode($return_arr);


}

Could you please help me how to do this? Thanks

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dqef7931
    dqef7931 2013-02-08 11:37
    已采纳

    first of all, you have to move $return_arr out of the loop, because you are redefining it every time (same as json_encode), then you have to add subarray contacts to make your code look like that you've presented

    here's your code:

    $return_arr = array();
    $return_arr['contacts'] = array();
    while( $row = odbc_fetch_array($res) ) {
        $row_array['ID'] = $row['ID'];
        $row_array['SPECIFIKIME'] = $row['SPECIFIKIME'];
        $row_array['IDPEMA'] = $row['IDPEMA'];
    
        array_push($return_arr['contacts'],$row_array);
    }
    echo json_encode($return_arr);
    
    点赞 评论

相关推荐