0

我的 Mailer 类中有以下标题

// domain is equal to current domain with capital letters if any
$from = domain;
$replyto = 'noreply@'.strtolower(domain);

$headers = "From: $from\r\nReply-To: ".$replyto;
$headers .= "\nMIME-Version: 1.0\nContent-Type: text/html; charset=\"utf-8\"\r\n";

但是由于某种原因,当我在邮箱中发送电子邮件时,我会收到一封来自 myusername@myhost.com 的电子邮件,这太糟糕了。我怎样才能将我的站点名称作为发件人?

4

2 回答 2

4

为了正确解析姓名和电子邮件地址,您应该以下列格式提供它们:

'From: Name <email@domain.tld>'

所以那会是这样的

'From: Marty McVry <marty.mcvry@mydomain.com>'

使用您的示例:

$headers = "From: $from <$replyto>\r\nReply-To: ".$replyto;

只是提醒一下:我希望您不必使用$domain代替domain... 否则将是一个愚蠢的错字。:-)

于 2013-09-29T12:27:20.857 回答
1

您可以尝试使用以下代码:

<?php
$to      = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);
?>

有关更多信息,请阅读邮件功能

于 2013-09-29T12:27:26.300 回答