在收件箱中向已安装电子邮件的用户显示名称

display name to the users insted of email in their inbox

我正在使用 sendgrid 向我的用户发送电子邮件。以前它工作正常,但在过去的 10-20 天里,代码没有任何变化,我注意到用户在收件箱的 from 字段中看到的是电子邮件地址,而不是姓名。

这是我的代码:

<?php

$url = 'https://api.sendgrid.com/';
$user = 'USERNAME';
$pass = 'PASSWORD';

$params = array(
'api_user'  => $user,
'api_key'   => $pass,
'to'        => 'example3@sendgrid.com',
'subject'   => 'testing from curl',
'html'      => 'testing body',
'text'      => 'testing body',
'from'      => '<domain name>example@sendgrid.com',  // see here 
 );
 $request =  $url.'api/mail.send.json';

 // Generate curl request
 $session = curl_init($request);
 // Tell curl to use HTTP POST
 curl_setopt ($session, CURLOPT_POST, true);
 // Tell curl that this is the body of the POST
 curl_setopt ($session, CURLOPT_POSTFIELDS, $params);
 // Tell curl not to return headers, but do return the response
 curl_setopt($session, CURLOPT_HEADER, false);
 // Tell PHP not to use SSLv3 (instead opting for TLS)
 curl_setopt($session, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2);
 curl_setopt($session, CURLOPT_RETURNTRANSFER, true);

 // obtain response
 $response = curl_exec($session);
 url_close($session);

 // print everything out
 print_r($response);

 ?>

问题是用户应该在收件箱的 from 字段中获取域名而不是电子邮件,但他们收到的是电子邮件。

我正在像这样使用 from 标签

     'from'      => '<domain name>example@sendgrid.com'

你能给我一些建议吗?

您可以像这样使用 fromname 参数:

'from' => 'email@domain.com',
'fromname' => 'Your Name'