最近做项目中遇到了phpmailer发送的邮件亂码问题这个问题很好解决,之所以乱码是因为编码没有统一,这里比如说我的项目文件都是GBK2312的格式那么在email.func.php文件中加入这么一行代碼:$mail->CharSet = "gb2312";
PHPMailer不能连接SMTP服务器和修改SMTP大小写沒有关系
博客之前有两篇文章,《》《》
PHPMailer不能连接SMTP服务器究竟为什么?先用代码检测一下:
PHPmailer是一个非常棒的PHP发送mail类处悝错误则侧重于和SMTP服务器会话过程中的问题,比如身份验证不对、收件人为空的错误提示但是对于连接到smtp过程的错误提示以“Could not connect to SMTP host”一言蔽の,导致了很多问题没能解决更可笑的是导致一些有用却讲不出道理的方法流传于世,可见冥冥中一切皆有定数。
上面那段PHP代码就是把这几个步骤分开来做找出原因,然后寻找方法回显的结果大概有如下几种:
1、解析失败 (2): 可能是一个无效的主机名说明域名无法解析。可能是DNS级别的问题联系管理員或者更换服务商
正如我標题所言“PHPMailer不能连接SMTP服务器,和修改SMTP大小写没有关系”当然我不可能恶趣味的作弄你,而是有时候真的有效治愈成功率多大就看你的囚品了
如果在你的服务器上运行这脚本能够收到邮件,那么你完全可以用修改SMTP大小写的方法不过,毕竟不大好用
想要使用mail函数函数发信需要修改设置php.ini,也即是说成与不成得看你的服务提供商。
这也就是为什么防火墙禁止的情况下用修改smtp大小写反而能用PHPmailer发信,因为那封e-mail根本是用本地的smtp服务器代发的
最近做项目中遇到了phpmailer发送的邮件亂码问题这个问题很好解决,之所以乱码是因为编码没有统一,这里比如说我的项目文件都是GBK2312的格式那么在email.func.php文件中加入这么一行代碼:$mail->CharSet = "gb2312";