Birkaç json nesneleri birleştirmek ve sonra yeniden kodlamak için json_decode kullanmaya çalışıyorum. benim json gibi görünüyor:
{
"core": {
"segment": [
{
"id": 7,
"name": "test1"
},
{
"id": 4,
"name": "test2"
}
]
}
}
ben bu json nesneleri birkaç tane var ve böyle bir şey almak için her biri için sadece "bölüt" dizilerini birleştirmek istiyorum:
{
"segment": [
{
"id": 7,
"name": "test1"
},
{
"id": 4,
"name": "test2"
}
],
"segment": [
{
"id": 5,
"name": "test3"
},
{
"id": 8,
"name": "test4"
}
]
}
şu anda benim php kodu, ben bir dizeye her "segment" dizi depolama, json çözme ediyorum, ve sonra json kodlayan.
public function handleJSON($json){
$decodeData = json_decode($json);
$segment =$decodeData->core;
return $segment;
}
public function formatJSON(){
$segments = "";
for ($i = 0; $i < count($json);$i++)
{
$segments .= handleJSON($json[$i]);
}
echo json_encode($segments);
}
when i do this, i receive an error : Object of class stdClass could not be converted to string
Eğer öyleyse o zaman ben bir dizide saklayarak kullanarak çalıştı:
public function formatJSON(){
$segments = array();
for ($i = 0; $i < count($json);$i++)
{
$segments[$i] = handleJSON($json[$i]);
}
echo json_encode($segments);
}
Bu sefer, ben bir hata alamadım, ama bu dizi parantez içinde benim tüm kombine json nesnesini depolar. nasıl ben sadece bir dizide kapsüllü olmadan, JSON nesnesi dönmek olabilir?