我这样的json输出:
[{" ID":5262130," ADRES":" Apollo40"" LAT":" 52.34985&# 34;," LNG":" 4.88261"" prijskaartje":" duur"}
应该是:
[{" ID":5262130," ADRES":" Apollo40""位置" {" LAT&# 34;:" 52.34985"" LNG":" 4.88261"}" prijskaartje":" duur" }
我只是不知道怎么做?
非常感谢帮助。
答案 0 :(得分:1)
以下两种方法可以创建一个可以创建所需JSON的对象。
一次创建一个包含所有属性的对象。
var jsObject = {
id: 5262130,
adres: "Apollo40",
location: {
lat: "52.34985",
lng: "4.88261"
},
prijskaartje: "duur"
};
// JSON encode it.
var objectJSON = JSON.stringify(jsObject);
创建一个对象,然后逐个添加属性。
var jsObject = {};
jsObject.id = 5262130;
jsObject.adres = "Apollo40";
jsObject.location = {};
jsObject.location.lat = "52.34985";
jsObject.location.lng = "4.88261";
jsObject.prijskaartje = "duur";
// JSON encode it.
var objectJSON = JSON.stringify(jsObject);
由于我不知道您的信息来源是什么,这是我能做的最好的事情。如果您向我提供有关您所编码信息的更多信息,那么我可能会修改此答案。
希望这有帮助!
编辑:这是JS fiddle link。
答案 1 :(得分:0)
$rewrite_json = json_decode($original_json, true);
$coordinates = array();
foreach($rewrite_json as $key => $value) {
$location[] = array('id'=>$value['id'],
'adres'=>$value['adres'],
'prijskaartje'=>$value['prijskaartje'],
'location'=> array('lat' => (float)$value['lat'], 'lng' => (float)$value['lng']));
}
$new_json = json_encode($location, JSON_PRETTY_PRINT);