我花了一天时间研究这个问题,终于猜对了答案,注意:iphone 对GBK编码的二维码扫码都是乱码的,不论是Iphone自带的二维码软件还是微信的二维码解析器都是乱码的!建议大家在对二维码内容写入的时候用UTF-8的编码,如果改不了编码的话就参考我下面的PHP代码吧。文件编码是UTF-8-Bom。$str 是你们自己的二维码内容,要切记如果你们用微信扫码复制内容,再通过微信助手发送信息,微信会将一些特殊字符转义的,影响下面的代码的执行效果,你们可以在你们真正的小程序应用中测试。先判断用户手机是不是IPhone,,是的话转到后PHP端处理,再返回结果。 <?php ob_clean();//注意这里 UTF-8-Bom文件 header("Content-Type:text/html; charset=GB2312"); $str='200107-033,ÍõÓýÑó,±¬¿î100¶ÏÇÅϵͳƽ¿ª´°£¨´°É´Ò»Ì壩,2020/01/31,2,2320*2230,ÄÚ·ú̼²¬ÒøÍâÉ°ÎÆ»Ò,0,ÎÞ¿îʽ,1,5.1736,º¬µØ̨Ëøλ¿ª1500£¬Í⿪ÏÂÐü´°,200107016,1ºÅ´°Ãµ¹åÔ°5-2-601 һ¥Î÷ÎÔ'; echo iconv("UTF-8","ISO-8859-1",trim($str)); exit();
使用Iphone手机在微信7.0.9版本扫描带有中文二维码出现乱码问题调用wx.scanCode方法时出现的问题 [图片]
2020-03-04我花了一天时间研究这个问题,终于猜对了答案,注意:iphone 对GBK编码的二维码扫码都是乱码的,不论是Iphone自带的二维码软件还是微信的二维码解析器都是乱码的!建议大家在对二维码内容写入的时候用UTF-8的编码,如果改不了编码的话就参考我下面的PHP代码吧。文件编码是UTF-8-Bom。$str 是你们自己的二维码内容,要切记如果你们用微信扫码复制内容,再通过微信助手发送信息,微信会将一些特殊字符转义的,影响下面的代码的执行效果,你们可以在你们真正的小程序应用中测试。可以试试我下面这一段。 <?php ob_clean();//注意这里 UTF-8-Bom文件 header("Content-Type:text/html; charset=GB2312"); $str='2001089-033,ÍõÓýÑó,±¬¿î100¶ÏÇÅϵͳƽ¿ª´°£¨´°É´Ò»Ì壩,2020/01/31,2,2320*2230,ÄÚ·ú̼²¬ÒøÍâÉ°ÎÆ»Ò,0,ÎÞ¿îʽ,1,5.1736,º¬µØ̨Ëøλ¿ª1500£¬Í⿪ÏÂÐü´°,200107016,1ºÅ´°Ãµ¹åÔ°5-2-601 һ¥Î÷ÎÔ'; echo iconv("UTF-8","ISO-8859-1",trim($str)); exit();
wx.scanCode二维码扫码出现中文乱码,是什么原因呢,应如何解决?wx.scanCode({ scanType: 'qrCode' success: (res) => { console.log("res.charSet==",res.charSet) //输出为UTF-8 console.log("res.rawData==", res.rawData) let result = res.result wx.navigateTo({ url: '../show/show' success: function (res) { res.eventChannel.emit('acceptDataFromOpenerPage', { data: result }) } }) }} 在show.js中解析得到的res,并在前端进行展示 问题是:通过手机端进行真机测试时res中的中文显示为乱码,同一个二维码上个月的时候用微信直接扫二维码显示的还是正常的,这周再用微信扫码就出现了乱码,是否是微信后端进行了什么更改呢?
2020-03-04