2012-07-30 56 views
0

我的json從我的PDO MySQL查詢返回爲關聯數組,正如我的意圖,除了整個字符串被兩個封閉的制動器包圍。我不知道如何繞過解析的括號。這是一個簡短的例子,類似於需要分析的json。關於我可能採取的方法的任何想法,或者我可以如何開始?當整個字符串被括在括號中時如何解析json

{ 
    "A": { 
     "lat": "37.76506200", 
     "lng": "-122.4196940" 
    }, 
    "B": { 
     "lat": "37.75225400", 
     "lng": "-122.4184660" 
    }, 
    "C": { 
     "lat": "37.72198087", 
     "lng": "-122.4474142" 
    } 
} 
+1

這就是您獲得的所有完整答覆/結果?這是有效的JSON,只是解析它。或者你有'(...)'周圍嗎?然後它似乎是格式錯誤的JSONP(缺少函數名稱)。將服務器設置爲提供適當的JSON或正確的JSONP。 – 2012-07-30 23:05:25

回答

2

隨着PHP,採取json_decode考慮:

$array = json_decode($string, true); // where $string is your returned value 
echo $array['C']['lng']; // will print -122.4474142 

隨着jQuery的你可以做到這一點:

var res = $.parseJSON(string); 
console.log(res.C.lng); // returns -122.4474142 

最後又用香草的javascript(如果支持JSON)

var res = JSON.parse(string); 
console.log(res.C.lng); 
+0

感謝您的快速回復。然而,我忽略了提及,我試圖用jQuery解析它,但是對jQuery來說是新的。我嘗試了eval()和$ .getJSON,但似乎無法獲取lat或lng元素。最終,我想能夠提取父節點。 – 2012-07-30 23:45:46

+0

@BobMac好吧,我添加了jQuery/JavaScript的其他可能性 – 2012-07-31 07:52:40