0

我不是很擅长 php,所以这对你们中的一个人来说应该(希望)很容易。

我正在尝试从 php 发送一封包含变量的 HTML 电子邮件。我可以发送带变量的无 html 电子邮件,或不带变量的 HTML 电子邮件,但我似乎无法同时发送这两种电子邮件。这是我的代码:

<?
$to = "me@something.co.uk";
$from = "m2@something.com";
$subject = "Hello! This is HTML email";
'
//begin of HTML message
$message = <<<EOF;

<html>
 <p>Opt out of contact by phone<br />
    '. $_POST["Opt_out_phone"] .'
 </p>
</html> EOF;

$headers  = "From: $from\r\n";
$headers .= "Content-type: text/html\r\n";

mail($to, $subject, $message, $headers);

echo "Message has been sent....!"; ?> 

我以前从未遇到过 <<< EOF,也不知道它在做什么。

4

1 回答 1

1

您正在使用 HEREDOC 语法并尝试终止字符串并错误且不必要地附加变量。要使用变量声明字符串,请执行以下操作:

$message = <<<EOF;

<html>
 <p>Opt out of contact by phone<br />
     {$_POST["Opt_out_phone"]}
 </p>
</html> EOF;

请注意,有关 heredoc 语法的 PHP 手动条目与字符串文档的其余部分位于此处

于 2012-07-12T17:17:12.563 回答