究其原因,是因为php和json语法将当成特殊字符, 所以想要原样表达,不要想着如何脱去(这样容易出错,把原本就是的也脱去了).
相反,应该将每个都替换成\, 这样就能表达他原本的意思. 如下例子

$json = '{"myClass": "app\\class\\test"}';
$re = json_decode($json, true);//结果为null

#将\替换成\\即正常了
$newJson = str_replace('\\', '\\\\', $json);
$re = json_decode($newJson, true);//正确输出

参考:
https://stackoverflow.com/questions/32056940/how-to-deal-with-backslashes-in-json-strings-php

标签: none

添加新评论