首頁  >  文章  >  後端開發  >  php解析json出錯

php解析json出錯

WBOY
WBOY原創
2016-08-04 09:19:091148瀏覽

<code><?php
$json = '{"detail":[{"name":24,"country":China,"location":{"city":chengdu},"code":2000}';
$obj = json_decode($json,true);
echo $obj->detail[0]->name;
echo $obj->detail[0]->location->city;
?>
</code>

程式碼如上,該怎麼修改?

回覆內容:

<code><?php
$json = '{"detail":[{"name":24,"country":China,"location":{"city":chengdu},"code":2000}';
$obj = json_decode($json,true);
echo $obj->detail[0]->name;
echo $obj->detail[0]->location->city;
?>
</code>

程式碼如上,該怎麼修改?

你的JSON格式都不對啊,json字串寫好了可以複製到http://www.bejson.com/上檢查一下

$obj = json_decode($json,true);之後可以直接echo $obj[0]['name']。使用json_decode($json, true)之後就轉換成陣列了而不是物件。可以操作數組了

$obj = json_decode($json,true);這樣接觸出來是數組,你用物件方式去取當然不對
$obj = json_decode($json);這樣解析出來的才是物件

不要手動建構json數據,一定要用PHP的函數去產生json json_encode(),我把你的json檢測了下,根本不是標準的json數據,報語法錯誤

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn