2014-09-03 64 views
0

我已經在SO上搜索了這個答案,但也許我沒有問正確的問題,因爲我還沒有找到答案(但我知道可能有很多例子)。將混合對象/數組轉換爲JSON

我有這個數組對象:

array(1) { 
    [0]=> 
    object(stdClass)#424 (3) { 
    ["AC"]=> 
    string(6) "Active" 
    ["CL"]=> 
    string(6) "Closed" 
    ["OH"]=> 
    string(7) "On Hold" 
    } 
} 

我試圖重新格式化,因此最終的結果是這樣的,所以它可以插入我的多選控件的數據源:

[ 
    { 
     "value": "AC", 
     "text": "Active" 
    }, 
    { 
     "value": "OH", 
     "text": "On Hold" 
    }, 
    { 
     "value": "CL", 
     "text": "Closed" 
    } 
] 
+0

我編輯了我的答案,現在有效嗎? – Jonan 2014-09-03 17:59:22

回答

2

使用此:

$newObjectsArray = array(); 
foreach($objectsArray as $index => $object){ 
    foreach($object as $key => $value){ 
     $newObjectsArray[$index][] = array("value" => $key, "text" => $value); 
    } 
    $newObjectsArray[$index] = json_encode($newObjectsArray[$index]); 
} 

$newObjectsArray現在保存轉換對象

+0

我不確定這是否會起作用,但是,我認爲我的小部件實際上需要在值之前顯式的「值」和「文本」屬性。 – deaddancer 2014-09-03 18:00:13

+0

@deaddancer這就是爲什麼我編輯它,它現在這樣做 – Jonan 2014-09-03 18:01:09

+0

Bingo!謝謝你,我正在這個車上旋轉一會兒。 – deaddancer 2014-09-03 18:03:05