简体   繁体   English

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

[英]How do I set the name of an email sender via PHP

So I want the from field when an email is opened to be something like所以我想from外地当电子邮件被打开,是这样的

"Jack Sparrow Via somesite" as opposed to an explicit email address. "Jack Sparrow Via somesite"而不是明确的电子邮件地址。

I wondering how to set this in PHP's mail() function?我想知道如何在 PHP 的mail()函数中设置它?

You can accomplish this by using basic headers.您可以通过使用基本标头来完成此操作。

<?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);
?>

You have to set your headers:你必须设置你的标题:

$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();

just use like this就这样使用

$headers .= 'From: [Name of the person]'.'<'. $this->from .'>'. "\n";

in Header Section.在标题部分。

如果您使用来自 GitHub 的 PHP Mailer,那么您可以通过以下方式进行:

$mail->SetFrom("info@mibckerala.org", "MIBC");
$to = "Someone@email.com";
$message = "Your message here.";
$subject = "Your subject";

mail($to,$subject,$message,$header, '-f some@site.com -F "Jack Sparrow"') or die();

Just add the -f parameter to provide the sender's email and -F parameter to provide the sender's name to the mail(), all as a string.只需添加 -f 参数以提供发件人的电子邮件和 -F 参数以将发件人的姓名提供给 mail(),所有这些都是字符串。

Note: double quotes around "Jack Sparrow"注意: “Jack Sparrow”周围的双引号

Assuming that you are using sendmail on a Linux machine:假设您在 Linux 机器上使用 sendmail:

You can find more detailed information by typing "man sendmail" in your shell.您可以通过在 shell 中键入“man sendmail”来找到更多详细信息。

I am not sure exactly what you mean, but as you can see on PHP.net mail function .我不确定你的意思,但正如你在PHP.net mail function上看到的那样。

To add the name to the from section you need to send this in the headers.要将名称添加到 from 部分,您需要在标题中发送它。 From:Name<email@example.com>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何更改PHP电子邮件的发件人名称? - How do I change the sender name of a PHP email? 通过php mailer发送电子邮件我在发件人中收到“通过host.blabla发送myemail”,如何删除? - Sending an email via php mailer I get “myemail via host.blabla” in sender, how to remove that? 使用PHP的mail()方法,如何设置发件人? - mail() method using PHP, how do I set the sender? PHP PEAR send_mail无法使用姓名和电子邮件设置发件人 - PHP PEAR send_mail Failed to set sender with name and email 如何更改发件人的电子邮件和姓名? - how can I change the email and name from the sender? 如何在Django中更改电子邮件发件人的姓名 - How can I change email sender's name in django 如何使用带有发件人名称和电子邮件地址的php发送不带服务器名称的电子邮件? - How to send email using php with sender name and email address by without server name? 如何使用Mail :: Sender发送没有“收件人”地址的电子邮件? - How do I send an Email with no “to” address using Mail::Sender? 在通过用户输入表单通过电子邮件发送消息时,如何包括发件人的姓名,而不仅仅是电子邮件地址 - How do I include sender's name and not just the email address while emailing message from user input form 如何在python电子邮件脚本中在发件人地址之前添加发件人姓名 - How to add sender name before sender address in python email script
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM