json_decode要求的字符串比较严格
1. 使用UTF-8编码
2. 不能在最后元素有逗号
3. 不能使用单引号
4. 不能有\r,\t,如果有请替换
解决方案
一、bom头问题
json字符串中的BOM头是不可见字符,某些编辑器默认会加上BOM头。
二、语法错误
使用 json_last_error() 函数打印一下错误,页面显示4,也就是语法错误。
出现这个问题是因为在 json 字符串中反斜杠被转义,只需要用 htmlspecialchars_decode() 函数处理一下 $content 即可:
三、其他破坏json字符串的字符