Laravel 4中的自定义电子邮件标题

esk*_*009 7 email-headers laravel laravel-4

我似乎无法在Laravel 4 docs/Email API中找到该方法,我可以在其中向电子邮件添加自定义标头.

例如:

Mail::send('emails.welcome', $data, function($message)
{
    $message->to('foo@example.com', 'John Smith')->subject('Welcome!');
    $message->headers('X-Tags', 'tag1 tag2 tag3');
});
Run Code Online (Sandbox Code Playgroud)

有谁知道如何做到这一点?

Jas*_*wis 15

据我所知,如果没有进入Swift Mailer,就无法添加自定义标题.

尝试这样的事情.

$message->getSwiftMessage()->getHeaders()->addTextHeader('X-Tags', 'tag1 tag2 tag3');
Run Code Online (Sandbox Code Playgroud)

它看起来并不漂亮,但是通过查看应该做的技巧来源.


正如下面的评论所指出的那样,这个getSwiftMessage方法并不是必需的,因为我忽略__call了这个Illuminate\Mail\Message类的魔法.

$message->getHeaders()->addTextHeader('X-Tags', 'tag1 tag2 tag3');
Run Code Online (Sandbox Code Playgroud)