WP_mail换行符不起作用

时间:2017-02-22 作者:Grégoire Llorca

我有一个发送电子邮件的界面SMTP (我使用插件Postman SMTP).

我在数据库中收集发送给某人的消息,具体取决于SQL请求的结果。

在DB中,我使用char
 用于换行符。

下面是代码(我用xxx替换了电子邮件地址,但很明显,我在真正的文章中使用了我客户的电子邮件地址):

$subject = $res->subject;
$message = utf8_encode( $msg );

$to = $res->url ;
$headers  = \'MIME-Version: 1.0\' . "\\r\\n";
$headers .= \'Content-type: text/html; charset=UTF-8\' . "\\r\\n";
$headers .= \'From: XXX <[email protected]>\' . "\\r\\n" .
  \'Reply-To: [email protected]\' . "\\r\\n";         

$sent = wp_mail($to, $subject , $message , $headers);
一切都正常(我收到了正确编码的电子邮件),但所有内容都是在一行上发送的(每次有&#13; 在数据库消息中)。奇怪的是,没有 ;在电子邮件中,它们只是从邮件中删除。

我还尝试添加以下行(显然是在单独的测试中):

$message = str_replace(\'&#13;\', "\\r\\n", $message);
$message = str_replace(\'&#13;\', \'<br />\', $message);
但我得到了同样的结果。

你能帮我解决这个问题吗?

1 个回复
SO网友:n8bar

修改以下行$headers .= \'Content-type: text/html; charset=UTF-8\' . "\\r\\n";$headers .= \'Content-Type: text/html; charset=ISO-8859-1"; 然后使用<br /> 对于换行符。

相关推荐