преобразовать php-массив в один объект JSON

Я преобразовал массив PHP в JSON, используя json_encode. Я проверил консоль, и объекты отображаются в массиве, но как отдельные объекты.

[ { Object { 03-13-2012="Jazz"}, Object { 07-19-2012="Pop"}, ... ] 

Как преобразовать этот массив в один объект, как это (в PHP или jQuery):

 Object { 03-13-2012="Jazz", 07-19-2012="Pop"} 

Изменить: вот начало моего print_r для массива PHP:

 Array ( [0] => Array ( [03-13-2012] => Jazz ) [1] => Array ( [07-19-2012] => Pop ) ) 

Solutions Collecting From Web of "преобразовать php-массив в один объект JSON"

Не бойтесь петель

 $output = array(); foreach($data as $v) { $output[key($v)] = current($v); } echo json_encode($output, 128); 

Посмотреть демо-версию

В общем, вам нужно подготовить такой массив PHP, который затем должен быть json_encode и передан на сервер:

 $data = array( '03-13-2012' => 'Jazz', '07-19-2012' => 'Pop', ); echo json_encode( $data ); exit; 

Вы захотите выполнить итерацию по индексированному массиву, создав в нем ключи ассоциативного массива в ключи во втором ассоциативном массиве.

Предположение: вы начинаете с строки JSON, и вы хотите получить строку JSON.

Предупреждение. Если вы столкнетесь с дубликатами, вы перезапишете.

Вот пример того, что я говорю:

 <?php $foo = json_decode('[{"abc":"A123"},{"xyz":"B234"}]'); $bar = array(); foreach ($foo as $f) { foreach ($f as $k => $v) { $bar[$k] = $v; } } echo json_encode($foo)."\n"; echo json_encode($bar)."\n"; ?>