好的我得到像这样的php服务器响应:
[[],[],[],[{"username":"xcodeSim","PUNTOS":"5"}],[],]
这是预期的,因为我使用此代码从mySQL获取数据,这是一个接收NSArray序列化帖子的php文件,如下所示:
NSData *data = [NSJSONSerialization dataWithJSONObject:usersArray options:0 error:&error];
所以服务器执行此操作:
foreach ($post_data as $value)
{
//CREATE QUERY
$result = mysql_query("SELECT username, SUM(points) AS PUNTOS FROM tags WHERE username='$value' GROUP BY username");
//EXECUTE QUERY & ADD EACH USER/POINTS DICTIONARY TO $resultado ARRAY
$resultado = array();
while($obj = mysql_fetch_object($result))
{
$resultado[] = $obj;
}
//STORE RESULTS IN NEW OBJECT TO RETURN
$arrayToReturn[] = $resultado;
}
Echo $json->encode($arrayToReturn);
所以我有两个问题:
1)如何消除每个用户点字典的内部数组?
2)如何消除主阵列中的空内部数组?
由于
答案 0 :(得分:1)
当你不需要时,你正在构建一个多级数组。跳过整个$数组返回业务:
$arr = array();
while($row = mysql_fetch_object($result)) {
$arr[] = $row;
}
echo json_encode($arr);