我已经删除了这封电子邮件,但它仍然显示问题:某些随机字符在 Outlook 中被“=”替换。我使用 PHP/Codeigniter 和 Sparkpost.com 作为邮件机制。
在 Outlook.com 中:
在gmail/其他客户端测试过,没问题
电子邮件配置:
$config['protocol'] = 'smtp';
$config['smtp_host'] = "smtp.sparkpostmail.com";
$config['smtp_user'] = "SMTP_Injection";
$config['smtp_pass'] = " ";
$config['smtp_port'] = 587;
$config['wordwrap'] = TRUE;
$config['mailtype'] = 'html';
$config['charset'] = 'utf-8';
$config['newline'] = "\r\n";
简化电子邮件的 HTML
有什么想法吗?
最佳答案
在您的配置中添加以下行:
$config['crlf'] = "\r\n";
原因如下:
根据RFC 2045对于带引号的可打印编码,必须使用 \r\n
。
然而 Codeigniter 打破了这个规则,因为他们说某些服务器无法正确处理这个问题,因此只能使用 \n
。
这记录在/system/libraries/EMail.php 下的电子邮件库中。 可以看到in Line 182在官方 Github 代表上。
关于php - Outlook 中随机 HTML 电子邮件字符替换为 "=",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44902985/