2013-09-02 2 views
0

У меня есть json, закодированный в php свой вывод следующим образом.PHP - Как добавить дополнительные объекты в JSON Encoded Array

[{"city":"Asasqewq"},{"city":"New Brunswick"},{"city":"Jersey City"},{"city":"Summit"},{"city":"Edison"},{"city":"Hillside"},{"city":"East Orange"}] 

и

{"city":"New City 1"},{"city":"New City 2"} 

Как объединить эти объекты 2 JSON данных для вывода, как это?

[{"city":"Asasqewq"},{"city":"New Brunswick"},{"city":"Jersey City"},{"city":"Summit"},{"city":"Edison"},{"city":"Hillside"},{"city":"East Orange"}, {"city":"New City 1"},{"city":"New City 2"}] 
+1

Пока неясно, что вы просите. –

+1

DUPLICATED [http://stackoverflow.com/questions/3504278/add-additional-objects-to-json-encoded-array][1] [1]: http://stackoverflow.com/questions/3504278/Add-дополнительные-объекты-к-JSON-закодирован массива –

ответ

1
$json_str = '[{"city":"Asasqewq"},{"city":"New Brunswick"},{"city":"Jersey City"},{"city":"Summit"},{"city":"Edison"},{"city":"Hillside"},{"city":"East Orange"}] 
'; 

$json_arr = json_decode($json_str, true); 

$json_arr[] = array('city' => 'NewCity1'); 
$json_arr[] = array('city' => 'NewCity2'); 

$json_str = json_encode($json_arr); 
0

Самым простым решением будет использовать substr

$json = '[{"city":"Asasqewq"},{"city":"New Brunswick"},{"city":"Jersey City"},{"city":"Summit"},{"city":"Edison"},{"city":"Hillside"},{"city":"East Orange"}]'; 
$new = '{"city":"New City 1"},{"city":"New City 2"}'; 
$json = substr($json,0,-1) . ',' . $new . ']'; 
0

Перед тем, как кодировать массив добавить 2 города к нему, то в коде его.

$theArray[] = array("city"=>"New City 1"); 
$theArray[] = array("city"=>"New City 2"); 
$json = json_encode($theArray); 

Теперь, если у вас нет доступа к объекту, вы можете его декодировать, чтобы добавить элементы, которые он закодирует снова.

$theArray = json_decode($json); 
$theArray[] = array("city"=>"New City 1"); 
$theArray[] = array("city"=>"New City 2"); 
$json = json_encode($theArray); 
0
$je --> your JSON Data... 

$jn = json_decode($je,true); 
    array_push($jn, array('city1' => 'City 1'),array('city2' => 'New City 2')); 
Смежные вопросы