Laravel 5.1:邮件驱动程序,添加标题

时间:2016-01-14 16:31:39

标签: php laravel laravel-5

我正在使用Laravel 5.1,并希望向SMS发送通知。 @ txt.bell.ca很好,但@ msg.telus.com,它没有发送。然后我添加了一个主题行,它会发送,但没有正文。只有主题行。

现在,我发现了如何使用PHP的mail()函数修复它。

$headers = "From: " . "name@mydomain.com" . "\r\n";
$headers .= "Reply-To: ". "name@mydomain.com" . "\r\n";
mail($to,$subject,$message,$headers,"-fname@mydomain.com");

现在,如何将它添加到Laravel 5.1中的Mail :: send()函数?

编辑: 为了澄清,参数如何:

"-fname@mydomain.com" 

转换为Mail :: send()闭包?

EDIT2:我在PHP文档中找到了以下信息,但它并没有帮助我将其翻译成Laravel的功能......

additional_parameters (optional)

The additional_parameters parameter can be used to pass additional flags 
as command line options to the program configured to be used when sending
mail, as defined by the sendmail_path configuration setting. For example, 
this can be used to set the envelope sender address when using sendmail 
with the -f sendmail option.

谢谢!

1 个答案:

答案 0 :(得分:1)

Laravel没有包含任何修改标题的方法,但Laravel用于邮件的基础类确实支持这一点。

以下应该可以解决问题...

Mail::send('test', [], function(Illuminate\Mail\Message $m) {
    $m->getSwiftMessage()->getHeaders()->addTextHeader('From', 'name@mydomain.com');
    $m->getSwiftMessage()->getHeaders()->addTextHeader('Reply-To', 'name@mydomain.com');
});