解决 php 使用json_encode存入数据库中的中文乱码丢失反斜杠问题

使用json_encode存入数据库中的中文数据应该是 \u6c88\u9633\u7cbe\u8bda\u5fd7\u8fbe
这种,但实际上存入的是u6c88u9633u7cbeu8bdau5fd7u8fbe
导致使用json_decode解析出来的数据不正确

解决办法:使用addslashes 方法转义一下添加反斜杠

addslashes(json_encode($json_arr,true));
本作品采用《CC 协议》,转载必须注明作者和本文链接
写这些文章的初衷只是记录一下自己的学习过程,避免自己忘记
讨论数量: 1

json_encode 第二个参数不是 true 和 false ,具体参数可以参考:www.php.net/manual/zh/json.constan... 一般编码中文或其他 unicode 使用 JSON_UNESCAPED_UNICODE 这个常量,编码后中文不会解析成 \uxxxx

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!