2012-02-02 79 views
1

我有一個簡單值對陣列這樣的屬性:轉換值/對列表(簡單陣列)插入JSON使用PHP

array(4) (
    [4] => (string) Barcelona 
    [3] => (string) Cordoba 
    [1] => (string) Granada 
    [2] => (string) Jaen 
) 

我需要編碼這JSON來在一個AJAX請求響應格式如下:

[{"pk": 4, "name": "Barcelona"}, 
{"pk": 3, "name": "Cordoba"}, 
{"pk": 1, "name": "Granada"}, 
{"pk": 2, "name": "Jaen"}] 

如果我使用:

json_encode($a) 

我得到如下:

{"4":"Barcelona","3":"Cordoba","1":"Granada","2":"Jaen","0":"Select a province"} 

我該如何讓PHP格式化我的簡單數組以在JSON中包含屬性?

+0

你試過遍歷了嗎? – 2012-02-02 13:16:22

回答

4

只需創建一個新的數組:

$data = array(); 

foreach($array as $key => $value) { 
    $data[] = array('pk' => $key, 'name' => $value); 
} 

$json = json_encode($data);