Maison  >  Article  >  développement back-end  >  下面这个json为什么不能正常转成数组

下面这个json为什么不能正常转成数组

WBOY
WBOYoriginal
2016-09-05 08:59:531199parcourir

[{id:'150',cnname:'福州市'},{id:'151',cnname:'厦门市'},{id:'152',cnname:'莆田市'},{id:'153',cnname:'三明市'},{id:'154',cnname:'泉州市'},{id:'155',cnname:'漳州市'},{id:'156',cnname:'南平市'},{id:'157',cnname:'龙岩市'},{id:'158',cnname:'宁德市'}]

是格式问题吗,我把所有的字段都用单引号包含起来,还是json_decode($str_json, 1);无法转成数组

回复内容:

[{id:'150',cnname:'福州市'},{id:'151',cnname:'厦门市'},{id:'152',cnname:'莆田市'},{id:'153',cnname:'三明市'},{id:'154',cnname:'泉州市'},{id:'155',cnname:'漳州市'},{id:'156',cnname:'南平市'},{id:'157',cnname:'龙岩市'},{id:'158',cnname:'宁德市'}]

是格式问题吗,我把所有的字段都用单引号包含起来,还是json_decode($str_json, 1);无法转成数组

看看 JSON 的语法定义,然后你会发现,其实 JSON 语法中并没有单引号,只有双引号,而且所有键都是字符串表示,也就是说,是必须带引号的。

你这段内容是合法的 JS 数组表示,但不是 JSON 格式。

<code class="json">[
  {
    "id": "150",
    "cnname": "福州市"
  },
  {
    "id": "151",
    "cnname": "厦门市"
  },
  {
    "id": "152",
    "cnname": "莆田市"
  },
  {
    "id": "153",
    "cnname": "三明市"
  },
  {
    "id": "154",
    "cnname": "泉州市"
  },
  {
    "id": "155",
    "cnname": "漳州市"
  },
  {
    "id": "156",
    "cnname": "南平市"
  },
  {
    "id": "157",
    "cnname": "龙岩市"
  },
  {
    "id": "158",
    "cnname": "宁德市"
  }
]</code>
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn