2011-12-13 85 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