php解析json出错

<?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;
?>

代码如上,该怎样修改?

阅读 4.8k
4 个回答

$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数据,报语法错误

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题