最容易通過例子來說明問題:PHP的json_decode具有單而不是雙引號
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意味着錯誤的第一個例子。
任何想法,爲什麼它這樣做,或者我能做些什麼來幫助防止除了做一堆字符串操作之外的問題?
閱讀http://json.org/,使用本機json編碼功能。 –
您可以使用http://jsonlint.com/或http://jsonformatter.curiousconcept.com/ –
輕鬆驗證json'''在JSON中不是有效的引號。使用''''或回家,基本上。 –