为了账号安全,请及时绑定邮箱和手机立即绑定

PHP 编码问题,AES解码后居然是ASCII码的中文,请问怎么转成UTF8呢

PHP 编码问题,AES解码后居然是ASCII码的中文,请问怎么转成UTF8呢

PHP
尚方宝剑之说 2019-03-12 05:56:19
对数据库进行搜索,查询不了,查询结果为空,通过mb_detect_encoding,知道字符串格式为ASCII编码,可能是因为这样子查询不了,怎样把ASCII编码的字符串转化为UTF8的字符串 但是ASCII不是只会有英文字母吗 如图第一行输出的String,为何长度为16 第三行的dump("MySQL"); 的长度为5
查看完整描述

2 回答

?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

是PHP的解密后,(mcrypt_decrypt)解密后不够16位长度的字符串,他会帮你补齐到16位,如果多于16位,少于32,就是32位,如此类推。难怪字符串长度是这个样子,在数据库查询因为字符串的错误,所以查询不到,后来使用了trim,清除两边的空格,就解决问题了。

查看完整回答
反对 回复 2019-03-18
?
炎炎设计

TA贡献1808条经验 获得超4个赞

先用加密解密的方法试试简单的字符串加密解密流程是否正确,如果正确,可能是加密前已经不是utf-8编码了

查看完整回答
反对 回复 2019-03-18
  • 2 回答
  • 0 关注
  • 933 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信