php - 如何在 Laravel 5.1 中向电子邮件添加 header

标签 php laravel laravel-5

有没有办法在 Laravel 5.1 中为所有电子邮件添加默认 header ?我希望发送的所有电子邮件都带有以下 header :

x-mailgun-native-send: true

最佳答案

Laravel 使用 SwiftMailer 来发送邮件。

当您使用 Mail facade 发送电子邮件时,您调用 send() 方法并定义一个回调:

\Mail::send('emails.reminder', ['user' => $user], function ($m) use ($user) {
    $m->to($user->email, $user->name)->subject('Your Reminder!');
});

回调接收 $m 变量,它是一个 \Illuminate\Mail\Message 对象,具有返回 getSwiftMessage() 方法>\Swift_Message 可用于设置 header 的对象:

$swiftMessage = $m->getSwiftMessage();

$headers = $swiftMessage->getHeaders();
$headers->addTextHeader('x-mailgun-native-send', 'true');

关于php - 如何在 Laravel 5.1 中向电子邮件添加 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32338842/

相关文章:

angularjs - 我应该如何确保访问后端呈现的前端路由的用户经过身份验证?

php - 插入具有特定计算值的多行

php - 如何修复这个错误 Package phpunit/phpunit-mock-objects is disabled, 你应该避免使用它。没有建议更换

php - Laravel 5 问题与 wherePivot

php - Laravel 的 mysql 嵌套选择查询的 Eloquent 关系

Laravel Blade @include 到 Javascript 变量中?

php - array_unique 只给我一个结果

php - 在 Wordpress 中使用当前帖子 ID 获取下一个/上一个帖子 ID

php - Doctrine2 原生查询多对多

php - 如何在 Laravel 中模拟验证规则