2015-10-06 84 views
0

我想在我有的PHP數組上使用json_encode,然後將其返回給AJAX調用。json_encode(PHP)返回一個非JSON對象

這裏是PHP數組稱爲$match_array

Array ([0] => 1966318353 [1] => 1962510086 [2] => 1962465781 [3] => 1962349187 [4] => 1962281400 [5] => 1962111347 [6] => 1962016291 [7] => 1961983582 [8] => 1961926702 [9] => 1961799894) 

$match_array返回使用json_encode以下:

[1966318353,1962510086,1962465781,1962349187,1962281400,1962111347,1962016291,1961983582,1961926702,1961799894] 

此得到由解析器作爲非JSON對象解釋。任何想法爲什麼這可能會發生?

謝謝!

+0

'json_encode'會將您的數組轉換爲json字符串。讓你在客戶端訪問解析它。 – aldrin27

+0

你期望字符串看起來像什麼? – Phil

回答

0

可以使用JSON_FORCE_OBJECT標誌時,嘗試:

json_encode($array, JSON_FORCE_OBJECT); 
0

json_encode與解釋作爲一個JSON數組這是一個有效的JSON字符串編號的鍵值數組。如果你使用類似JSON.parse()的東西,它會給你一個JavaScript數組。如果您實際正在查找對象類型,上面的海報是正確的。使用JSON_FORCE_OBJECT將強制該數組使用對象表示法,如{'0': 1966318353 ... }