2013-02-18 39 views
1

我無法得到我的jQuery腳本的有效響應。json_encode不生成我需要的JSON表格

我的迴應:

{ 
    "success": true, 
    "data": { 
     "attack": null, 
     "shield": null, 
     "speed": null, 
     "cargo": null, 
     "upg_slots": "1" 
    } 
} 

代碼:

echo json_encode(array(
    'success' => true, 
    'data' => array(
     'attack' => null, 
     'shield' => null, 
     'speed' => null, 
     'cargo' => null, 
     'upg_slots' => "1" 
    ) 
)); 

有效響應:

{ 
    "success": true, 
    "data": [ 
     { 
      "attack": null, 
      "shield": null, 
      "speed": null, 
      "cargo": null, 
      "upg_slots": "1" 
     } 
    ] 
} 

提前感謝!

+4

我知道JSON功能強大,但是「神形」? – Blazemonger 2013-02-18 21:37:48

回答

1

如果您需要在一個單一的字典列表,你需要嵌套您的關鍵字陣列位置陣列:

$data = array(
    array(
     'attack' => null, 
     'shield' => null, 
     'speed' => null, 
     'cargo' => null, 
     'upg_slots' => "1" 
    ) 
); 
echo json_encode(array('success' => true, 'data' => $data)); 
1

看起來你在你的迴應中'data'項下缺少一個以上的陣列,只需再次包住這樣的:

echo json_encode(array('success' => true, 'data' => array(array('attack' => null, 'shield' => null, 'speed' => null, 'cargo' => null, 'upg_slots' => "1")))); 
//             ^^^