lyhwswswws
2019-03-07 20:43
采纳率: 100%
浏览 922
已采纳

mysql 模糊查询 json_encode之后的数据 a可搜出中文

1.数据库入库昵称,进行json_encode转译存储,现在搜索中文没有问题,但是搜索a b c d e f u 这些英文就会把中文encode之后的数据也搜索出来,怎么解决?
图片说明

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • threenewbee 2019-03-08 09:01
    已采纳

    php代码中对返回的结果做json_decode后再判断一次

    打赏 评论
  • 子幽 2019-03-08 15:30

    json_encode会将中文转为unicode编码,每一个unicode编码会带一个反斜杠,查询语句识别不出反斜杠加母,所以搜索失败,只要在存数据的时候将json_encode的第二个参数设置为JSON_UNESCAPED_UNICODE,这样数据库中村的就直接是中文,就能识别了

    1 打赏 评论
  • 序冢--磊 2019-03-08 15:09

    json_encode 有一个参数可以不对中文进行编码,还有如果进行文本查询尽量不要使用mysql了,用搜索引擎,用mysql查文本的like查询效率是十分低的+

    打赏 评论

相关推荐 更多相似问题