gpt4 book ai didi

PHP json_decode 有单引号问题但不是双引号

转载 作者:行者123 更新时间:2023-12-02 01:06:41 27 4
gpt4 key购买 nike

通过示例最容易解释:

var_dump(json_decode("[{'a':'b'},{'c':'d'},{'e':'f'}]")); // NULL
var_dump(json_decode('[{"a":"b"},{"c":"d"},{"e":"f"}]')); // array(3) { [0]=> object(stdClass)#1 (1) { ["a"]=> string(1) "b" } [1]=> object(stdClass)#2 (1) { ["c"]=> string(1) "d" } [2]=> object(stdClass)#3 (1) { ["e"]=> string(1) "f" } }

如您所见,第一个使用单引号的示例返回 NULL,表示错误,而第二个示例正常。

除了进行一堆字符串操作之外,是否知道它为什么这样做或者我可以做些什么来帮助防止出现问题?

最佳答案

JSON 中的字符串定义为:

""
" chars "

换句话说,JSON字符串需要双引号(不是单引号)。你是如何得到这个 JSON 的?我们可以看看在解码之前验证/修复字符串的可能解决方案。

来源:http://www.json.org/http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf

A value can be a string in double quotes, or [...]

关于PHP json_decode 有单引号问题但不是双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21788731/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com