我正在通过下面的 php 代码发送电子邮件,该代码将电子邮件模板发送到用户的电子邮件地址。但是,电子邮件发送时所有 HTML 标记仍然可见且无效。
$fh = fopen('templates/customer.eml','r');
$emailContents = fread($fh, filesize('templates/customer.eml'));
$emailContents = str_replace(":name:", $person->first . " " . $person->last, $emailContents);
$emailContents = str_replace(":meeting_name:", $meeting->name, $emailContents);
$emailContents = str_replace(":chair:", $chair->first . " " . $chair->last, $emailContents);
fclose($fh);
$header = "FROM: vra@vodafone.com\r\n";
$header = "MIME-Version: 1.0\r\n";
$header.="Content-type: text/html; charset: utf8\r\n";
mail($person->email , "Meeting Request", $emailContents, "FROM: user@domain.com");
下面是我用于内容的电子邮件模板文件:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<body>
<p>
Dear :name:,<br />
You have been invited to <em>:meeting_name:</em> chaired by :chair:.
</p>
<p>
Main text of the email will go here<sup>*</sup>.
</p>
<p>
Thankfully
</p>
<p>
User
</p>
</body>
</html>