2016-05-07 2 views
-4

Моя текущее значение JSON как это:Комбинат 2 или более JSON в PHP

{"vegetable_names":["vegetables 1","vegetables 2","vegetables 3"]}{"grade":["XXL","A","B","S"]}{"packages":["Carton Boxes","Baskets"]} 

Но я хотел бы, чтобы хотеть выходной быть таким:

{"vegetable_names":["vegetables 1","vegetables 2","vegetables 3"],"grade":["XXL","A","B","S"],"packages":["Carton Boxes","Baskets"]} 
+0

'эхо«{ "vegetable_names": [ "овощи 1", "овощи 2", "овощи 3"], "класс": [ "XXL", "A", "B", "С "]," packages ": [" Коробки коробки "," Корзины "]} ';' Серьезно, однако, нам нужно будет увидеть, что ваш код предоставляет любую полезную помощь. – Chris

+0

Если вы не уточните, как были созданы данные, ваш вопрос, вероятно, будет закрыт. –

ответ

0

JSON - это просто текстовое представление некоторой структуры данных. Восстановите структуру данных из строк JSON, используйте PHP, чтобы изменить ее (или создать новую структуру данных, если это более уместно), снова закодировать обновленную/новую структуру данных до JSON.

Кажется, что «JSON» вы разместили в качестве входных данных, а не JSON. Это конкатенация трех строк JSON. Так не получается!

// Input JSON strings 
$json1 = '{"vegetable_names":["vegetables 1","vegetables 2","vegetables 3"]}'; 
$json2 = '{"grade":["XXL","A","B","S"]}'; 
$json3 = '{"packages":["Carton Boxes","Baskets"]}'; 

// Restore the data structures as arrays 
$data1 = json_decode($json1, TRUE); 
$data2 = json_decode($json2, TRUE); 
$data3 = json_decode($json3, TRUE); 

// Combine them; it seems all you need is a simple merging 
$data = array_merge($data1, $data2, $data3); 

// Encode the combined arrays as JSON again 
$output = json_encode($data); 
0

Я думаю, вы получите Джонсон, как вы описали. Если нет, я предлагаю вам следовать за решением Пола Кровели, чтобы сделать это с самого начала.

Предположим, что это не вариант для вас, как насчет декодирования Json для объекта или массива, объединяющего эти два или более, а затем кодировать их снова как Json. Ужасно, но если Json создается независимым от вас источником, вы можете сделать это так.

Смежные вопросы