2014-06-29 76 views
1

我有這樣一個基本的陣列:如何將JSON格式化爲數組數組?

[ 
    { 
     "id": 4, 
     "name": "Ray" 
    }, 
    { 
     "id": 5, 
     "name": "Anthony" 
    } 
] 

,我需要返回一系列這些陣列作爲單個JSON消息的一部分。根據:http://jsonlint.com/,我似乎無法做到。例如,我有一羣人。每個組都是一組人,每個組都應該是父數組的一個獨特元素。它應該如何格式化?

澄清:

group1: ray, anthony 
group2: john, mike 
group3: ed, dan 

等等...

+1

什麼是您試圖格式是什麼樣子? – Pointy

+0

您是PHP或JavaScript中的基本數組嗎?你是否將數組中的PHP對象分組? – b01

+0

PHP還是JavaScript?選一個。 –

回答

2

只是其中組由兩個的,從PHP創建結構,然後根據通常情況下,使用json_encode()。例如:

$groups = array(
    'group1' => array(
     array('id' => 4, 'name' => 'Ray'), 
     array('id' => 5, 'name' => 'Anthony'), 
    ), 
    'group2' => array(
     array('id' => 6, 'name' => 'john'), 
     array('id' => 7, 'name' => 'mike'), 
    ), 
    'group3' => array(
     array('id' => 8, 'name' => 'ed'), 
     array('id' => 9, 'name' => 'dan'), 
    ), 
); 

echo '<pre>'; 
print_r(json_encode($groups, JSON_PRETTY_PRINT)); 

應該產生類似:

{ 
    "group1": [ 
     { 
      "id": 4, 
      "name": "Ray" 
     }, 
     { 
      "id": 5, 
      "name": "Anthony" 
     } 
    ], 
    "group2": [ 
     { 
      "id": 6, 
      "name": "john" 
     }, 
     { 
      "id": 7, 
      "name": "mike" 
     } 
    ], 
    "group3": [ 
     { 
      "id": 8, 
      "name": "ed" 
     }, 
     { 
      "id": 9, 
      "name": "dan" 
     } 
    ] 
} 
0

我猜這個工程:

{ 
    "g1": [ 
     { 
      "id": 4, 
      "name": "Ray" 
     }, 
     { 
      "id": 5, 
      "name": "Anthony" 
     } 
    ], 
    "g2": [ 
     { 
      "id": 4, 
      "name": "Mike" 
     }, 
     { 
      "id": 5, 
      "name": "John" 
     } 
    ] 
} 
0

我喜歡這種方式:

var groups = [ 
"G1" : { 
    "11" : { 
     "id" : 11, 
     "name" : "jhon" 
    }, 
    "3" : { 
     "id" : 3, 
     "name" : "erik" 
    } 
}, 
"G2" : { 
    "8" : { 
     "id" : 8, 
     "name" : "jean" 
    }, 
    "4" : { 
     "id" : 4, 
     "name" : "jim" 
    } 
} 
] 

任何組內的任何對象的鍵是ID(字符串格式)的人,以便輕鬆訪問其數據。

ex。

group.G2[8]; // return jean object 

PHP格式:

$g = array(
    'G1' => array(
     '11' => array('id' => 11, 'name' => 'jhon'), 
     '3' =>array('id' => 3, 'name' => 'erik') 
    ), 
    'G2' => array(
     '8' => array('id' => 8, 'name' => 'jean'), 
     '4' => array('id' => 4, 'name' => 'jim') 
    ) 
);