1

在将 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]

我有点困惑,所以欢迎任何帮助:) 谢谢!

4

1 回答 1

3

那是因为$coordinates是字符串类型。

$coordinates="[".$row["lat"].",".$row["lng"]."]";

$coordinates像这样创建

$coordinates = array($row["lat"],$row["lng"]);
于 2012-06-13T10:17:21.843 回答