将php数组编码为json时,我遇到了一个小但很奇怪的问题。
我需要阻止array()在特定值周围添加双引号。
这是php数组:
$coordinates="[".$row["lat"].",".$row["lng"]."]";
$egUser=array(
"geometry"=>array(
"type"=>"$type",
"coordinates"=>$coordinates
),
"type2"=>"$type2",
"id"=>$id
);
$arrayjson[]=$egUser;
用json_encode返回以下json:
var member = {
"type": "FeatureCollection",
"features": [{
"geometry": {
"type": "Point",
"coordinates": "[46.004028,5.040131]"
},
"type2": "Feature",
"id": "39740"
}]
};
如您所见,坐标包含在双引号>
中"coordinates": "[46.004028,5.040131]"
如何摆脱这些报价?我需要以下代替>
"coordinates": [46.004028,5.040131]
我有点困惑所以欢迎任何帮助:) 谢谢!
答案 0 :(得分:3)
多数民众赞成因为$coordinates
的类型为String。
$coordinates="[".$row["lat"].",".$row["lng"]."]";
像这样创建$coordinates
$coordinates = array($row["lat"],$row["lng"]);