Я работаю на карте горячих точек. Которые необходимо исправить именно в руководстве. Но из моего кода. Там больше персонажа мешают плагин интерпретировать.
Это мой JSON:
[{//this is the extra
"hs1": {
"title": "Door Way",
"hfov": "110",
"pitch": "-3",
"yaw": "130",
"type": "equirectangular",
"panorama": "\/photos\/Door-Way-5a57aff9c30b7.jpg",
"hotSpots": [{
"id": "17",
"pitch": "-0.8069389",
"yaw": "-174.40953",
"type": "info",
"text": "Closet"}]
}
},//extra
{//extra
"hs2": {
"title": "Toilet",
"hfov": "110",
"pitch": "-3",
"yaw": "130",
"type": "equirectangular",
"panorama": "\/photos\/Toilet-5a58b8ed2cb23.jpg",
"hotSpots": ""}
}//extra]
В каждом наборе нового глоссария появляется дополнительный «{}».
Это мой PHP:
$result[]=array(
"hs".$rec_scnArr['id']=>
array(
"title"=>$rec_scnArr['title'],
"hfov"=>$rec_scnArr['hfov'],
"pitch"=>$rec_scnArr['pitch'],
"yaw"=>$rec_scnArr['yaw'],
"type"=>"equirectangular",
"panorama"=>"/photos/".$rec_sIMG['pic_file'],
"hotSpots"=>$hotSpots //$hotSpots is the array
)
);
echo json_encode($result,true);
Я уверен, что должно быть что-то не так с циклом php. Но я не могу видеть. Это пример со страницы плагина.
Итак, вопрос в том, как избавиться от лишних «[» и «{» в коде json? Я думаю, что это не важно, но это так. Когда я положил сырой код там. Работает. Тогда я думаю, что это проблема.
Похоже, что вы хотите, это один объект с несколькими свойствами вместо массива объектов, каждый из которых имеет одно свойство.
Для этого вам нужно добавить все свойства в один и тот же массив:
$result["hs".$rec_scnArr['id']] = array(
"title"=>$rec_scnArr['title'],
"hfov"=>$rec_scnArr['hfov'],
"pitch"=>$rec_scnArr['pitch'],
"yaw"=>$rec_scnArr['yaw'],
"type"=>"equirectangular",
"panorama"=>"/photos/".$rec_sIMG['pic_file'],
"hotSpots"=>$hotSpots //$hotSpots is the array
);
echo json_encode($result,true);
Других решений пока нет …