0

我正在使用以下代码:

$message = "Hi ".$user.
  ",\r\rThe following names are on the guestlist for <b>".$night.
  "</b> on ".$date2.":\r\r". $user ."<br>". implode(", ", $names).
  "\r\rThank you for using Guestvibe.";

mail($email, "Your Guestvibe list", $message);

PHP 中的回车符工作正常,但<b>or<br>标记都没有出现。只是我的邮件客户端(Apple Mail)在播放,还是有解决办法?

4

4 回答 4

6

您将电子邮件作为文本而不是 HTML 发送,我相信您需要设置这些标题:

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n";

文档中的示例 #4 所示

于 2012-06-13T22:44:58.423 回答
5

PHP 的mail函数默认发送明文邮件。

有关发送 HTML 邮件的正确方法,请参阅邮件手册页中的 nr.4 示例。

于 2012-06-13T22:45:37.763 回答
3

您需要添加标题:

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

mail($email, "Your Guestvibe list", $message, $headers);
于 2012-06-13T22:46:42.437 回答
1

您应该首先将整个消息包装成:

<html><head></head><body> msg </body></html>

加上来自 m.edmondson 帖子的标题。

于 2012-06-13T22:46:35.673 回答