php-显示名称而不是电子邮件的电子邮件标题的格式是什么?
我正在尝试创建一个php脚本,该脚本将使用mySQL数据库为我处理邮件列表,并且我已将其中的大部分安装到位。 不幸的是,我似乎无法使标题正常工作,而且我不确定问题是什么。
$headers='From: noreply@rilburskryler.net \r\n';
$headers.='Reply-To: noreply@rilburskryler.net\r\n';
$headers.='X-Mailer: PHP/' . phpversion().'\r\n';
$headers.= 'MIME-Version: 1.0' . "\r\n";
$headers.= 'Content-type: text/html; charset=iso-8859-1 \r\n';
$headers.= "BCC: $emailList";
我在接收端得到的结果是:
回复至:noreply@rilburskryler.netrnX-Mailer:PHP / 5.2.13rnMIME版本:1.0
RonLugge asked 2020-02-18T18:47:31Z
3个解决方案
110 votes
要使用显示的名称而不是显示的电子邮件地址,请使用以下命令:
"John Smith"
简单。
关于折线,这是因为您将文本用撇号而不是引号引起来:
$headers = array(
'From: "The Sending Name" ' ,
'Reply-To: "The Reply To Name" ' ,
'X-Mailer: PHP/' . phpversion() ,
'MIME-Version: 1.0' ,
'Content-type: text/html; charset=iso-8859-1' ,
'BCC: ' . $emailList
);
$headers = implode( "\r\n" , $headers );
Luke Stevenson answered 2020-02-18T18:47:56Z
10 votes
在单引号字符串中,仅转义序列\'和\\分别由'和\代替。 您需要使用双引号将转义序列\r和\n替换为相应的字符:
$headers = "From: noreply@rilburskryler.net \r\n";
$headers.= "Reply-To: noreply@rilburskryler.net\r\n";
$headers.= "X-Mailer: PHP/" . phpversion()."\r\n";
$headers.= "MIME-Version: 1.0" . "\r\n";
$headers.= "Content-type: text/html; charset=iso-8859-1 \r\n";
$headers.= "BCC: $emailList";
您还可以使用数组来收集标头字段,然后将它们放在一起:
$headers = array(
'From: noreply@rilburskryler.net',
'Reply-To: noreply@rilburskryler.net',
'X-Mailer: PHP/' . phpversion(),
'MIME-Version: 1.0',
'Content-type: text/html; charset=iso-8859-1',
"BCC: $emailList"
);
$headers = implode("\r\n", $headers);
Gumbo answered 2020-02-18T18:48:21Z
-2 votes
$to = 'SendersName@domain.com';
$to .=', ' . $_POST['Femail'];
$subject = 'Contact Us Form';
// message
$message ="
Email titleimportant message follows
you are being brought this email to be safe.
";
// To send HTML mail, the Content-type header must be set
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// Additional headers
$headers .= 'To: SendersEmailName ' . "\r\n";
$headers .= 'From: YourName ' . "\r\n";
$headers.='X-Mailer: PHP/' . phpversion()."\r\n";
$headers.= "BCC: $emailList";
mail($to, $subject, $message, $headers);
cmptrwhz answered 2020-02-18T18:48:37Z