所以我在使用Codeigniter的Email类制作脚本来发送电子邮件时遇到了问题。我设置了这样的配置:
$config['protocol'] = 'mail';
$config['charset'] = 'iso-8859-1';
$config['wordwrap'] = FALSE;
$config['mailtype']= "html";
电子邮件已成功发送,但当我打开电子邮件时(电子邮件客户端是使用iso-8859-1 charset的webmail客户端),我的一些话语搞砸了。
这是我想要的电子邮件:
Thank you for registering a UMall account. Here's the details of your account:
Email: su-mie@ntu.edu.sg
Pass: 1234567
Fullname: Reinardus Surya Pradhitya
Phone: 83612737
Click here to activate your account: http://su.ntu.edu.sg/umall/index.php/register/activate/3a228e96124a66f1070361e0961854d5
以下是它的显示方式:
Thank you for registering a UMall account. Here's the details of your accou= nt:
Email: su-mie@ntu.edu.sg
Pass: 1234567
Full= name: Reinardus Surya Pradhitya
Phone: 83612737
Click here= to activate your account: http://su.ntu.edu.sg/um= all/index.php/register/activate/3a228e96124a66f1070361e0961854d5
故障字符始终为“=”。等号后面跟一个空格。有谁知道什么是错的?
有趣的是,我尝试在手机的另一个电子邮件客户端中打开它,看起来很不错。
编辑:我认为问题在于包装。我无法覆盖设置,我无法使用{unwrap} {/ unwrap}。怎么解决这个问题?答案 0 :(得分:2)
我有同样的问题,“@ Alix Axel”帮助解决了这个问题。
请参阅此帖子:CodeIgniter SMTP email message - characters replaced with equal signs
它涵盖了您需要的配置。
答案 1 :(得分:1)
尝试将字符集更改为utf-8。
$config['protocol'] = 'mail';
$config['charset'] = 'utf-8';
$config['wordwrap'] = FALSE;
$config['mailtype']= "html";