我想使用邮件功能发送电子邮件。 想要按如下方式添加换行符。
$msg = 'aaaaa'.'\r\n'.'bbbbbb'.'\r\n';
$headers .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";
$to = 'test@test.com';
mail($to,'Subject',$msg,$headers);
但不行。
如何发送电子邮件如下。
AAAAA
BBBBBB
答案 0 :(得分:5)
新行是"\n"
,而不是'\n'
(双引号而不是单引号)。
$msg = 'aaaaa'."\n".'bbbbbb'."\n";
解释如下:
http://php.net/manual/en/language.types.string.php#language.types.string.syntax.double
如果字符串用双引号(")括起来,PHP将解释更多特殊字符的转义序列
答案 1 :(得分:4)
要添加换行符,您需要添加" \ n",而不是' \ n'
答案 2 :(得分:2)
你可以在你的邮件正文中使用html标签(<br />
打破新行):
$message = '<html><body>';
$message .= '<h1>Hello, World!</h1><p>Hello<br />This is in a newline</p>';
$message .= '</body></html>';
如果您想发送纯文字,则可以使用\n
。
在你的情况下:
$msg = "aaaaa \r\n bbbbbb \r\n";
你的标题:
$headers = "From: Name <info@name.com> \r\n";
$headers .= "MIME-Version: 1.0 \r\n";
$headers .= "Content-Type: text/html; charset=UTF-8 \r\n";
注意:如果是单引号字符串, 要指定文字反斜杠,请将其加倍(\)。所有其他实例 反斜杠将被视为字面反斜杠:这意味着 您可能习惯的其他转义序列,例如\ r或\ n,将是 按字面意思输出,而不是具有任何特殊含义。