• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

PHP发送移动MAS短信乱码的解决方法

php 搞代码 4年前 (2022-01-23) 53次浏览 已收录 0个评论

项目中需要使用到移动代理MAS短信的接口开发,但是厂家提供的开发包没有PHP的,只能使用DB接口,直接操作MYSQL。但是在短信发送后,手机接收到的短信确实乱码,琢磨了很久,大致判断应该是字符编码的问题。沿着这个方向不断琢磨、实验,最终找出了原因。

1、登录到mas机的mysql数据库,
使用命令:show variables like “%char%”;
查看mysql数据库的字符编码:

2、php使用如下:

mysql_connect(‘IP:3306′,’user’,’pwd’);
mysql_select_db(‘mas’);
mysql_query(“set names latin1;”);
mysql_query(mb_convert_encoding(“insert into api_mt_db01(mobiles,content)values(‘”.$mobiles.”‘,'”.$content.”‘);”, “GB2312″,”UTF-8”));
其中set names latin1等同于
SET character_set_client = latin1;

SET character_set_results = latin1;

SET character_set_connection = latin1;
3、项目中的字符编码是UTF-8,运行环境是windows 2008 ,其字符编码是GB2312,
由于latin1和utf8字符集不兼容,转换不可逆,所以必须把utf8转成gb2312,再把GB2312转成latin1

所以信息输入路径:app->os->client->connection->mysql,编码编码转换过程utf8->gb2312->latin1->la本文来源gaodai#ma#com搞@@代~&码*网/搞gaodaima代码tin1->latin1


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:PHP发送移动MAS短信乱码的解决方法
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址