有没有人能帮我处理这个邮件脚本。
我只是尝试发送一封html电子邮件,部分消息来自用户textarea,它将\r\n。
我似乎无法使用nl2br或任何其他类似的功能。下面的代码不是我正在使用的代码,但仍然会产生错误。
代码:
$to = 'example@gmail.com';
$subject = 'Test Subject';
$message_var_1 = 'test1 \r\n test2 \r\n test3';
$message = nl2br("
<div>
<div>$message_var_1</div>
</div>
");
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'X-Mailer: PHP/'.phpversion() . "\r\n";
mail($to, $subject, $message, $headers);发布于 2010-08-03 19:52:52
$message_var_1 = 'test1 \r\n test2 \r\n test3';PHP只能在"内解析\r和\n,而不能在'内解析。所以nl2br不适用于这里。
$message_var_1 = "test1 \r\n test2 \r\n test3";
$message = '<div>
<div>'.nl2br($message_var_1).'</div>
</div>';这应该是可行的。
发布于 2010-08-03 20:00:07
此字符串包含嵌入的换行符,因此您最终会得到一些不需要的<br/>。
$message = nl2br("
<div>
<div>$message_var_1</div>
</div>
");您可以:
$message = "<div>" . nl2br($message_var_1) . "</div>";或者,使用
标记要容易得多:$message = "<pre>$message_var_1</pre>";发布于 2010-08-03 20:09:30
另一种方法是使用HEREDOC。
$message = <<<OUTPUT
<div> some text
<div> some more text </div>
</div>
OUTPUT;
$message = nl2br($message);heredoc here的手动链接
https://stackoverflow.com/questions/3396147
复制相似问题