2013-05-27 80 views
0

嗨,我一直在試圖以JSON格式提取數據。這是我的代碼從URL中提取JSON格式的數據

$resourse_url = 'http://www.livepicly.com/app/api.php?method=list_vendor_name'; 
$json_data = file_get_contents($resourse_url); 
$json_output = json_decode($json_data, TRUE); 

$vendor = $json_output['vendor_name'][1]; 

echo "<pre>"; 
print_r($vendor); 
exit(1); 

但是,當我運行代碼它不會返回任何東西。當我嘗試通過firefox訪問源URL時,它會詢問我將JSON數據保存爲* .php的位置,但是當我從Chrome訪問源URL時,它會像平常一樣顯示JSON數據。

我必須在這裏做什麼?任何人都可以指出我的解決方案? THX

+3

這是無效的JSON:'第33行解析錯誤: ...... 「VENDOR_NAME」: 「Nanny's Pavillion -----------------------^ 期待STRING,NUMBER,NULL,TRUE, FALSE','{','[''。檢出[JSONLint](http://www.jsonlint.com)並粘貼你的JSON來驗證它(這是逃脫的' ''在Nanny's Pavillion(中央公園)'這是造成這個問題的原因。)也許嘗試做一個'$ json_data = str_replace(「\'」,「'」,$ json_data);'因爲解析它。你也**使用'$ json_output ['result'] [0] ['vendor_name']'使它正常工作。 – h2ooooooo

+0

Thx是驗證JSON數據的絕佳工具。 Thx .. – Jeremy

回答

0

http://jsonformatter.curiousconcept.com/

{ 
    "result":[ 
     { 
     "vendor_id":"726", 
     "vendor_name":"Scusa" 
     }, 
     { 
     "vendor_id":"519", 
     "vendor_name":"Emilie French Restaurant and Bar" 
     }, 
     { 
     "vendor_id":"482", 
     "vendor_name":"Cassis French Fine Dining" 
     }, 
     { 
     "vendor_id":"435", 
     "vendor_name":"Asuka Japanase Dining" 
     }, 
     { 
     "vendor_id":"12050", 
     "vendor_name":"Taipan" 
     }, 
     { 
     "vendor_id":"12061", 
     "vendor_name":"Social House" 
     }, 
     { 
     "vendor_id":"12103", 
     "vendor_name":"Harum Manis Indonesian Restaurant" 
     }, 
     { 
     "vendor_id":"12193", 
     "vendor_name":"Nanny\'s Pavillion (Central Park)" 
     }, 
     { 
     "vendor_id":"12272", 
     "vendor_name":"Bistro Baron" 
     }, 
     { 
     "vendor_id":"20704", 
     "vendor_name":"Kitchenette (Central Park)" 
     }, 
     { 
     "vendor_id":"21217", 
     "vendor_name":"Kitchenette (Plaza Indonesia)" 
     }, 
     { 
     "vendor_id":"29859", 
     "vendor_name":"Momento Restaurant And Bar" 
     }, 
     { 
     "vendor_id":"31055", 
     "vendor_name":"Tortuga Kitchen And Bar" 
     }, 
     { 
     "vendor_id":"31056", 
     "vendor_name":"Tuck And Chug" 
     }, 
     { 
     "vendor_id":"31060", 
     "vendor_name":"AUROZ Gourmet Grill" 
     } 
    ] 
} 

運行返回的JSON才發現這條線的無效字符

"vendor_name":"Nanny\'s Pavillion (Central Park)" 
+0

搜索json驗證器的想法直到現在還沒有出現在我的腦海裏。 Thx,這可以幫助我瞭解我的代碼無法工作的原因。 Thx to H2ooooooooo too .. – Jeremy