如何通过PHP设置电子邮件发件人的姓名

alg*_*der 15 php email

因此,from当电子邮件打开时,我想要该字段

"Jack Sparrow Via somesite" 而不是明确的电子邮件地址.

我想知道如何在PHP的mail()功能中设置它?

end*_*ill 34

您可以使用基本标头来完成此操作.

<?php
$to      = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: Jack Sparrow <jsparrow@blackpearl.com>' . PHP_EOL .
    'Reply-To: Jack Sparrow <jsparrow@blackpearl.com>' . PHP_EOL .
    'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);
?>
Run Code Online (Sandbox Code Playgroud)

  • **注意:**当你想要`\ r \n`时,最好使用`PHP_EOL`使其与所有系统兼容 (3认同)
  • 这仍然适用于此吗?据我了解,PHP_EOL给出了服务器使用的行结尾,但这应该特定于电子邮件标头而不是服务器的标准. (2认同)

Jam*_*mes 11

您必须设置标题:

$to = "Someone@email.com";
$header = "FROM: Jack Sparrow <some@site.com>\r\n";
$message = "Your message here.";
$subject = "Your subject";

mail($to,$subject,$message,$header) or die();
Run Code Online (Sandbox Code Playgroud)