2016-08-12 96 views
0

我想知道是否可以在PHP中將json數組轉換爲單個json對象?將json數組轉換爲單個Json對象

我的意思是下面的JSON數組:

[{'x':'y','k':'l'}, {'q':'w', 'r':'t'}] 

可以轉換爲:

{'0':{'x':'y','k':'l'}, '1':{'q':'w', 'r':'t'}} 
+1

然後它將成爲一維數組 –

+0

「你繼續使用這個詞,我不認爲這意味着你認爲它的意思。」 [沒有像「JSON對象」](http://benalman.com/news/2010/03/theres-no-such-thing-as-a-json/)。 –

回答

2

使用json_encodeJSON_FORCE_OBJECT參數

$json = "[{'x':'y','k':'l'}, {'q':'w', 'r':'t'}]"; 
$array = json_decode($json, true); // convert our JSON to a PHP array 
$result = json_encode($array, JSON_FORCE_OBJECT); // convert back to JSON as an object 

echo $result; // {"0":{"x":"y","k":"l"},"1":{"q":"w","r":"t"}} 

JSON_FORCE_OBJECT

當使用非關聯數組時,輸出一個對象而不是數組。當輸出的接收者期待對象並且數組爲空時特別有用。自PHP 5.3.0起可用。

0

請嘗試下面的代碼。

$array[] = array('x' => 'y','k' => '1'); 
$array[] = array('q' => 'w','r' => 't'); 
echo json_encode($array,JSON_FORCE_OBJECT);