2011-12-10 47 views
0

我在解析json响应时遇到了问题。它通过php创建并通过http作为json发送回我的手机。从php解析json数组中的多个数组 - > java

正是凭借这么3个数组的数组...

$arr = array(); 

然后我寻找我的MySQL数据库与查询特定ID,通常大约3结果与唯一ID作为数组返回指数..这样

$sql = mysql_query("Select from so and so"); 
while($row = mysql_fetch_assoc($sql)){ 
    $arr[$row["ID"]] = $row; 
} 
print(json_encode($arr)); 

所以现在在我的Android(Java)的代码,我试图给一个JSON对象的响应转换,然后分析它与

json_object.getString("FirstName") 

所有3个返回的名字,但它的崩溃。所以我想我需要先解析出3个单独的数组,这是我卡住的地方。

- 问题是我该如何挑出在这一个对象内返回的数组。他们每个人都有相同的密钥,但不同的值

-crashing不是一个好的选择,我应该说的是它找不到我使用getString方法时寻找的值,这里是返回值

+0

这里没有问题。或者JSON。 –

+0

同意。你需要发布一个'print_r($ arr)',也可能是'json_encode($ arr)'的结果......并提出一个问题 – rdlowrey

+0

问题是如何分离在这个对象中返回的数组。每个人都有相同的密钥,但值不同 – zafrani

回答

1

同意上面的意见,需要更多的细节。

但是,如果你要回格式正确的JSON响应,它是一个数组,你总是可以做这样的事情......

JSONArray results = new JSONArray(<json response string>); 

for (int i=0; i<results.length(); i++) { 
    JSONObject obj = results.getJSONObject(i); 
} 

和文档,供大家参考:

http://developer.android.com/reference/org/json/JSONArray.html

+0

谢谢......这正是我所寻找的,如果我受欢迎,我会为你+1。 – zafrani