Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
输入邮件正文PHP的新行_Php_Phpmailer_Newline - Fatal编程技术网

输入邮件正文PHP的新行

输入邮件正文PHP的新行,php,phpmailer,newline,Php,Phpmailer,Newline,我对邮件正文的“enter”有问题。我在表单中使用textarea作为输入,然后提交给gmail发送。问题是,正文中始终有“\r\n”而不是“enter”。我尝试了很多建议,如nl2br、trim等,但仍然不起作用 这是我的密码: 这是表格 您可能以HTML格式发送电子邮件,而您的文本区域包含普通文本。您应该用标记替换换行符(\r\n或\n)。您可以使用: $emailBody = str_replace(["\r\n", "\n"] , "<br/>", $emailBody);

我对邮件正文的“enter”有问题。我在表单中使用textarea作为输入,然后提交给gmail发送。问题是,正文中始终有“\r\n”而不是“enter”。我尝试了很多建议,如nl2br、trim等,但仍然不起作用

这是我的密码:

这是表格


您可能以HTML格式发送电子邮件,而您的文本区域包含普通文本。您应该用

标记替换换行符(
\r\n
\n
)。您可以使用:

$emailBody  = str_replace(["\r\n", "\n"] , "<br/>", $emailBody);
//OR
$emailBody = nl2br($emailBody);
$emailBody=str_replace([“\r\n”,“\n”],“
,$emailBody); //或 $emailBody=nl2br($emailBody);
有关nl2br,请参阅

试试像这样的东西

echo mysqli\u real\u escape\u字符串($mysqli,str\u replace(“\n”),“
,$\u POST['message']);
您必须仅在发送电子邮件时替换
\n
,而不是在文本区域

在PHPMailer中,
$mail->isHTML(true)//将电子邮件格式设置为HTML

更多信息请访问:


我通常使用

,我知道这是一种黑客行为,但它对我来说是这样的
回音“Hello World
World Hello”您正在创建HTML电子邮件还是简单文本电子邮件?如果您试图发送HTML电子邮件,请选中“如果您直接从textarea发送数据,请将换行符\n替换为
标记”。如果您是文本编辑器,则无需将换行符更改为
抱歉,它仍然无法与您一起使用isHTML(true)我正在使用phpmailer发送带有gmail的电子邮件。我使用google oauth登录,关于邮件,它来自我的表单为什么在str_replace中使用方括号?我可以简单地做
str_replace(“\n”、“
”、$emailBody)
,但我想用
替换\r\n和\n会更清楚。不是吗?我已经尝试过类似问题中建议的替换和nl2br,但这些在我的案例中都不起作用。我不知道,如果我把“\n”放在变量中,可能它只是读为纯文本而不是“enter”?用
替换\n会产生相同的结果,除了
在文本区域和邮件正文中都可见之外。嗯,我如何放置echo语句?@AdityaVictory Write$message=mysqli\u real\u escape\u string($mysqli,str\u replace(“\n)”,“
,$\u POST['message']);
echo mysqli_real_escape_string($mysqli, str_replace("\n","<br/>",$_POST['message']));