最近在开发114好帮手网站时,尝试在php中读取本地json配置文件,并用json_decode转换为数组。


  1. $locationarr =array();
  2.             $city          = $Request->ccity;
  3.             $location      = file_get_contents(‘city.json’);
  4.             $locationarr = json_decode($location,true);
  5.             dump($locationarr);

复制代码

以上代码执行后,返回结果为NULL空值。

顺带说明一下json_decode的使用方法:
json_decode($str,true):返回数组,FALSE 时返回对象(不填写默认为false)

常见的几种原因:

解析的json只能是UTF-8编码;
元素的最后不能有逗号(json数据使用,分割数据,最后不能存在逗号);
元素不能使用单引号(全部是同双引号);
元素值中间不能存在空格和换行间隔符等,必须替换;
如果是json_decode($str,true)json转数组,需要注意一下格式是否正确;

小编遇到的就是第二个问题,如下图所示,最后一组数据后面加了逗号,取消逗号后就正常输出数组了。

  1. {
  2. “重庆”:”101040100″,
  3. “北京”:”101010100″,
  4. “海淀”:”101010200″,
  5. }

复制代码

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部