使用标记时发送PHP邮件

使用标记时发送PHP邮件,php,newline,sendmail,Php,Newline,Sendmail,PHP邮件发送问题当使用标记时,它不会出现新行。 这是我的代码有同样的问题 $subject = 'Watch Out Our Colorful Web Design Presentation'; $headers = "From: " . $email . " \r\n"; $headers .= "Reply-To: ". $email . "\r\n"; $headers .= "Bcc: test@test.com\r\n"; $headers .= "MIME-Version: 1.0

PHP邮件发送问题当使用标记时,它不会出现新行。 这是我的代码有同样的问题

$subject = 'Watch Out Our Colorful Web Design Presentation';
$headers = "From: " . $email . " \r\n";
$headers .= "Reply-To: ". $email . "\r\n";
$headers .= "Bcc: test@test.com\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";

$message = "Watch Out Our Colorful Web Design Presentation.\r\n";
$message .= "<a href='http://www.stackoverflow.com'>CLICK HERE</a>\r\n";
mail($to, $subject, $message, $headers);    
$subject='注意我们丰富多彩的网页设计演示文稿';
$headers=“From:”$电子邮件。“\r\n”;
$headers.=“回复:”$电子邮件。“\r\n”;
$headers.=“密件抄送:test@test.com\r\n“;
$headers.=“MIME版本:1.0\r\n”;
$headers.=“内容类型:text/html;字符集=ISO-8859-1\r\n”;
$message=“注意我们丰富多彩的网页设计演示文稿。\r\n”;
$message.=“\r\n”;
邮件($to、$subject、$message、$headers);
邮件发送成功,但在中出现问题\r\n。它不需要新的线路。我也试过了。但它是通过垃圾邮件发送的

$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";

您正在发送一封HTML电子邮件。这意味着您应该使用HTML而不是换行符。为避免将电子邮件放入垃圾邮件文件夹,您应该阅读一些。

您必须使用

标记新行

不能将
\n
用于html打印的新行


正如其他人所说,如果您发送的电子邮件内容类型为text/HTML,则需要使用HTML换行符

。换行符/回车符将在消息源中解释为换行符,但它们可能不会呈现为HTML

从PHP发送电子邮件时,我总是建议使用电子邮件类,而不是PHP的原生邮件函数

我倾向于使用。它的优点是,所有邮件头都经过清理和转义,以避免可能通过脚本引发垃圾邮件的头注入攻击。此外,使用各种电子邮件传输也更容易。还有一个很棒的decorator插件,它可以发送数千条带有自定义字符串的消息,对于“亲爱的{first_name}{lausname}”或自定义的取消订阅/跟踪链接非常有用

这里有一些SwiftMailer的示例代码,以防您感兴趣

// START SWIFTMAILER
require_once($swiftmailer_path);
$swift_transport = Swift_SendmailTransport::newInstance($sendmail_cmd);
$swift = Swift_Mailer::newInstance($swift_transport);
$swift_msg = Swift_Message::newInstance($swift_transport);
$swift_msg->setMaxLineLength(150);
$swift_msg->setFrom( array('NoReply@domain.com' => 'MyWebsiteName'));
$swift_msg->addTo($user);
$swift_msg->setSubject($subject);
$swift_msg->setBody($msg_html, 'text/html');
$swift_msg->addPart($msg_txt, 'text/plain');

// SEND E-MAIL
if ($swift_result = $swift->send($swift_msg)) {
    // SENT SUCCESSFULLY
} else {
    // ERROR - E-MAIL NOT SENT
}

我认为
/r/n
被忽略,因为内容类型是
text/html
。将内容类型设置为
text/plain
,但HTML标记不起作用我需要text/HTML,因为我必须在其中放置一个标记。如果我删除一个标记,那么它就可以正常工作。我不是指在html中,而是指在标题中。很抱歉没有解释清楚,我也试过了,但它在浏览器中显示了一行新词,但在发送时不起作用mail@MohamedHassan:谢谢,它现在可以工作了,但有问题,邮件在新行中有,但它在垃圾邮件文件夹中。事实上,我发送了很多次邮件,但从未发生过这种问题。这可能是因为我在发送邮件时使用了标记,这对我不起作用,因为我在这里没有使用任何类。