PHP从textarea进入以发送电子邮件

时间:2015-06-19 03:08:03

标签: php html5

我为用户创建了一个表单,用于键入收件人,主题名称和消息,以通过phpmailer发送邮件。我面临的问题是我的表格中的textarea。

我将其输入textarea:

Hi john,
how's your day?

regards,
your best friend

但是现在,这在电子邮件中显示:

Hi john, how's your day? regards, your best friend

有关如何将其格式化为用户如何在文本区域中输入的任何想法?我当前的剧本只是

$body= $_POST["msg"];

我读到我应该使用nl2br但不是输出?提前致谢

1 个答案:

答案 0 :(得分:3)

您需要做的是为每一行添加一个中断。

$text = trim($_POST['textareaname']); // remove the last \n or whitespace character
$text = nl2br($text); // insert <br /> before \n 

如果您不喜欢这样尝试:(您可能需要使用它。)

//trim off excess whitespace off the whole
$text = trim($_POST['textareaname']);

//explode all separate lines into an array
$textAr = explode("\n", $text);

//trim all lines contained in the array.
$textAr = array_filter($textAr, 'trim');

$str='';
//loop through the lines
foreach($textAr as $line){
$str .= $line."</br> ";
}