我正在尝试使用 json_decode 来解码一个 json,其中包含一个带逗号的单词和一个带双引号的单词:
{"wordsFont":"Times New Roman","nameList":["Overflow ,","Stack ""]}
json_decode 失败,所以我尝试格式化字符串以使用以下函数转义引号:
function fixDoubleQuotedJSON($broken_json)
{
return str_replace('""','\""',$broken_json);
}
但这只是逗号和双引号位于单词末尾的情况。结果:
{"wordsFont":"Times New Roman","nameList":["Overflow \,","Stack \""]}
正确解码,但我需要找到一种方法来处理双引号和逗号的任何位置。有什么建议么?
编辑:这是数据库中的初始值:
{\"wordsFont\":\"Times New Roman\",\"nameList\":[\"Overflow ,\",\"Stack \\\"\"]}
而且我无法将生成它的代码更改为数据库