2011-12-13 133 views
2

我有一個數組$suggested_cities,這vardumped:如何JSON編碼這個PHP數組?

array(3) { 
    [15526]=> 
    string(9) "Alabaster" 
    [15137]=> 
    string(7) "Florala" 
    [37091]=> 
    string(8) "Saraland" 
} 

當我JSON編碼此陣:

echo json_encode(array($suggested_cities)); 

我得到這樣的輸出:

[{ 
    "15526": "Alabaster", 
    "15137": "Florala", 
    "37091": "Saraland" 
}] 

但我需要它成爲:

[{ 
    "15526": "Alabaster" 
}, 
{ 
    "15137": "Florala" 
}, 
{ 
    "37091": "Saraland" 
}] 

我該怎麼做?我認爲這是一個「嗯」的答案,但我無法弄清楚。

+1

所需的JSON結構代表一個對象數組 - 這是一個很大的線索。另外,最好每個對象使用兩個字段,id和city。 –

+0

@David Caunt你是對的,只需將suggested_cities變成一個多維數組。還使用該id作爲單獨的字段而不是密鑰。謝謝。 – TKpop

回答

2

方式一:

$json = json_encode(array_chunk($suggested_cities, 1, true)); 

DEMO

雖然只是編碼$suggested_cities似乎更加簡單。

+0

這個工程,所以我會選擇這個作爲最佳答案,但我所要做的就是把$ suggested_cities變成一個多維數組和json編碼。 – TKpop