如何通过 Swift Mailer 添加邮件头

6

我正在尝试通过Swift Mailer添加邮件头部信息。

$message = Swift_Message::newInstance($title)
          ->setFrom(array('mail@mail.com' => 'Name'))
          ->setTo(array($email => $email))
          ->setBody($content, 'text/html');

我试过这个方法,但返回了错误。

 $message-> addTextHeader('List-Unsubscribe', $url_unsub);

这个返回值并没有任何作用,但是也不会返回错误信息。

$headers = $message->getHeaders();
$headers->addTextHeader('List-Unsubscribe', $url_unsub);      
$result = $mailer->send($message); 

Any idea what to do?


文档非常简单明了。错误信息是什么?你能检查一下是否已经添加了头部吗(请参阅文档)? - Andrei
我正在使用SAP的B2B驾驶舱。我需要从SWIFT消息中删除头信息以便于我的接口和Java代码,或者是否有预定义的过程可供实现此操作。 - Anil Kumar
1个回答

6

首先,修改为:

$message->getHeaders()->addTextHeader('List-Unsubscribe', $url_unsub); 

因为您在调用getHeaders()后没有将$headers$message关联/设置。

其次,请检查$url_unsub是否包含适合标题"List-Unsubscribe"的正确格式。例如,请参见此处 => http://www.list-unsubscribe.com/


2
“因为在调用getHeaders()之后,您没有设置/关联$headers到$message。” 您的一行代码与OP的最后一个代码块有何不同?无论您是否将由getHeaders()返回的对象分配给变量,都不会改变其身份,如果它本来就是,则仍然链接到$message - BenMorel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接