PHPMailer - 如何在altbody中添加断行?

时间:2012-03-05 06:51:14

标签: php phpmailer break lines

如何添加断行?

我正在使用它:

$mailbody=$username."\r\n";
$mailbody.=$email."\r\n";

$altbody=$username."\r\n";
$altbody.=$email."\r\n";

但是,

我正在使用$altbody,因为出于某种原因,我用来接收电子邮件的软件不会读取HTML,只读取纯文本,因此,当电子邮件阅读器不支持时,$altbody是正文HTML,所以,我不能使用BR ......

有什么想法吗?

7 个答案:

答案 0 :(得分:10)

通常只有\n的换行符应该可以在纯文本电子邮件中使用 但请坚持使用html-mail <br/>中的$mailbody

答案 1 :(得分:0)

您之前是否有格式化邮件正文的代码?您可能无意中剥离了所有html标签和所有\(例如,如果您使用stripslashes)。

答案 2 :(得分:0)

当我发送包含来自HTML textarea的文字的电子邮件时,我遇到了类似的问题。使用php nl2br解决了这个问题。

答案 3 :(得分:0)

使用PHPMailer,您需要使用整个包含整个$msg = "<html><body> Type your messsage here.<br><br> Sincerely,<br> <br> Contributor </body></html>"; 块。试试这个:

{{1}}

答案 4 :(得分:0)

您可以像{/ p>一样尝试heredoc

$altbody = <<<MAIL
Hello $username,

Welcome to example.com!
MAIL;

$altbody = <<<MAIL
Hello $username,\nWelcome to example.com!
MAIL;

答案 5 :(得分:0)

With WTH0 AS (
  SELECT '12345' x FROM dual
),
WTH1 AS (
  SELECT '1' c1, '2' c2, '3' c3 FROM dual union
  SELECT null c1, null c2, null c3 FROM dual
)
SELECT X 
FROM WTH0
WHERE X NOT IN (SELECT C1||C2||C3 FROM WTH1);

答案 6 :(得分:0)

这不能直接回答所问的问题,但确实可以回答导致我发此帖子的问题(并且我还不能发表评论):

我使用单引号,但是PHP用不同的方式解释单引号和双引号。

尝试对AltBody使用双引号,例如"\n"而不是'\n'