php读取写入数据库乱码,如果你百度不能解决,看看这篇吧!!

  php项目是宕下来的,本人也是刚接触php,但是我要说的是这个php基本关系不大,这个乱码问题困扰了我好几天,百度了n多解决方案,发现就呵呵了全是抄来的,还不注明转载地址,也是服了!百度上的方法我几乎都试过,修改php.ini文件啦,修改my.ini文件啦,还有设置页面字符编码集,保持所有字符全为utf8呀我都是试过,发现还是不行。我觉不否认这些方法能解决正好碰到同样问题的朋友,但是呢,无良百度把重复的答案全排列在前几页。是因为mysql支持的 utf8 编码最大字符长度为 3 字节,如果遇到 4 字节的宽字符就会插入异常了,所以MySQL在5.5.3之后增加了这个utf8mb4的编码,mb4就是most bytes 4的意思,专门用来兼容四字节的unicode。但是我修改自己编码仍旧不能解决问题,留待以后细思。我是怎么解决的呢,我将编码设置为Latin1,就是数据库默认初始编码也就是所谓的ISO-8859-1编码。当然我的数据仍旧是utf-8编码。但是确实这么解决了中文读取写入的乱码问题。项目我不放上来了,如果不是和我一样遇到了封装类直接可以修改字符编码级可以去看看官方网站对这个方法的解读地址http://php.net/manual/zh/mysqli.set-charset.php,不想多说了,最后感谢水景一页的文章,地址http://php.net/manual/zh/mysqli.set-charset.php。至于代码等有空在上传。

我觉得我安装的navicat有问题呀,真心醉了,重新连接一下就可以访问了,且数据正确,我另一篇文章有说,就不多赘言了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值