我有这个PHP代码:
mail($email, $subject,
"Welcome to **!\n\n The password for your account is:\n $password",
$headers);
在php电子邮件内容中添加& nbsp不会插入空格。
我想在冒号和$password
之间放置两个空格。有没有办法添加空格?
答案 0 :(得分:2)
您可以将电子邮件发送为HTML,这需要在邮件正文中添加额外的标题和实际的HTML:
// Add extra headers to $headers
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
// Send mail as HTML
mail($email, $subject,
"<html><body>Welcome to **!<br><br> The password for your account is:<br> $password</body></html>",
$headers);
答案 1 :(得分:1)
添加<html>
和</html>
:表示邮件是HTML格式的。然后,您可以使用
使用nl2br函数将换行符转换为<br/>
s。
还可以通过附加标题“Content-Type: text/html; charset=UTF-8
”来设置内容类型。
如果您不想使用HTML:您也可以使用制表符\t
,但不确定Hotmail是否支持该打印机。
答案 2 :(得分:0)
这实际上取决于您正在阅读它.Winmail的问题在于它将其视为计划文本,但将其转换为最有可能向您显示的HTML。
答案 3 :(得分:0)
如果电子邮件Content-Type
为text/plain
,则应尊重所有空格。听起来像是在发送电子邮件为text/html
,这就是为什么你需要&amp; nbsp来显示第二个空格。
答案 4 :(得分:0)
使用http://swiftmailer.org/类通过PHP发送电子邮件。它做得很好,并为您提供了许多不错的功能。
答案 5 :(得分:0)
在发送邮件时尝试使用'wordwrap',这应该打破电子邮件和 解决问题:
@mail($to, $subject, wordwrap($message), $headers);