以下PHP代码运行正常,但由于某种原因它没有进行换行。
PHP:
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=utf-8\n";
$headers .= "From: '".$title."' <".$store_email."> \n";
$subject = "New Payment Received";
//MESSAGE
$message = "New payment was successfully recieved through paypal payment terminal:";
$message .= "\r\n\nFrom ".$paypal->pp_data['payer_email'];
$message .= "\r\nPaid: ".$paypal->pp_data['payment_gross']." ".$paypal->pp_data['mc_currency'];
$message .= "\r\nDate: ".date('d/m/Y');
$message .= "\r\nTime: ".date('g:i A');
mail($admin_email,$subject,$message,$headers);
不知道有什么不对吗?提前谢谢。
答案 0 :(得分:5)
您正在发送HTML电子邮件。换行符在HTML中没有意义,您需要<br />
个标记。
答案 1 :(得分:0)
直接回答ceejayoz给出的是正确的,因为它是一个html电子邮件,因此需要html元素<br>
。
更大的问题是并非所有电子邮件都可以在html中读取(例如:用户不允许使用HTML电子邮件)。发送电子邮件的任何人都应该分两部分发送。一个是html格式的消息,另一个是纯文本的“替代”。通过这种方式,无论电子邮件阅读器如何,收件人都可以阅读电子邮件。
\ r \ n换行符在纯文本替代部分和html <br>
或其他元素中工作,以便格式化。
这样做可以避免下一个问题。收件人抱怨我的电子邮件是空白的。