7

我像这样编码它..

json_encode($array_list, JSON_UNESCAPED_SLASHES)

例如:\n 变成 \\n,\r\n 变成 \\r\\n

但是,它仍然逃脱了斜线!出了什么问题以及如何解决?谢谢。

4

2 回答 2

23

我认为是因为single and double quotes,看例子

$arr = array("\n\r");
echo json_encode($arr,JSON_UNESCAPED_SLASHES);  // ["\n\r"]

$arr = array('\n\r');
echo json_encode($arr,JSON_UNESCAPED_SLASHES);  //["\\n\\r"]

工作示例http://codepad.viper-7.com/LvWMhq

于 2013-02-08T04:48:40.443 回答
0

如果在执行任何 MySQL 查询时存在问题,那么您可以像这样使用它:

mysql_real_escape_string(json_encode($array))

$array在此之前无需转义本身的任何内容,只需mysql_real_escape_string转义 json_encoded 字符串即可。

于 2015-11-03T10:41:52.570 回答