将混合对象/数组转换为JSON

时间:2014-09-03 17:32:55

标签: php arrays object

我在SO上搜索了这个问题的答案,但也许我没有问正确的问题,因为我还没找到答案(但我知道那里可能有很多例子) )。

我有这个带有对象的数组:

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"
    }
]

1 个答案:

答案 0 :(得分: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现在保存已转换的对象