我已将400个联系号码转换为JSON对象,然后将其发送给PHP。我能够收到我在下面确认的JSON文件。
$jsonString = file_get_contents('php://input');
echo $jsonString;
用于将联系人号码转换为JSON的android代码:
JSONimdb = new JSONObject();
for (int i = 0; i < aa.size(); i++) {
try {
JSONimdb.put("genere"+String.valueOf(i+1), aa.get(i));
Log.e("Shiva","phone-->"+aa.get(i));
} catch (JSONException e) {
e.printStackTrace();
}
}
EverythingJSON = new JSONObject();
try {
EverythingJSON.put("imdblist", JSONimdb);
} catch (JSONException e) {
e.printStackTrace();
}
我使用Volley发送此JSON
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new Hashtable<String, String>();
params.put("arr", EverythingJSON.toString());
return params;
//returning parameters
}
一旦我收到JSON,我正在解码它并使用foreach解析它。
$obj = json_decode($jsonString,true);
$imdb=array();
foreach ($obj['imdblist'] as $key => $value)
{
echo "came inside";
//echo "<br>------" . $key . " => " . $value;
$imdb[$key] = $value;
}
但循环没有执行。这里有什么问题?当我手动提供如下所示的值
时,此循环有效 $jsonString = '{"imdblist":{"genere1":"+1 (000) 0000","genere2":"+1 (000) 000-0000"}}';
这里有什么问题?这是因为联系人的数量更多?或任何语法错误?请帮忙。