【发布时间】:2021-01-21 07:45:51
【问题描述】:
我正在尝试使用 cc 和/或 bcc 发送电子邮件,并且只有收件人才能收到电子邮件。
我正在派遣这样的工作:
$user = User::where('email', 'test1@test.com')->first();
$sender = 'test@test.com';
$cc = User::where('email', 'test2@test.com')->first();
$bcc = User::where('email', 'test3@test.com')->first();
$subject = "Test subject";
$text = "Text mail body";
dispatch(new SendEmailJob($user,$sender,$cc,$bcc,$subject, $text))->delay(now()->addSeconds(10));
然后在 SendEmailJob 的构造函数中,我接受这些参数并发送电子邮件:
public function handle()
{
Mail::to($this->user)->cc($this->cc)->bcc($this->bcc)->send(new TestMail($this->sender, $this->subject, $this->text));
}
还有实际的TestMail:
public function build()
{
return $this
->from($this->sender)
->subject($this->subject)
->markdown('emails.test');
}
降价:
@component('mail::message')
{!! nl2br($text) !!}
@endcomponent
SendEmailJob 和 TestMail 都在实现 ShouldQueue 并运行 php artisan queue:work。 $user 可以收到电子邮件,但 $cc 和 $bcc 没有。在 Mailtrap 和生产上都试过了。一项作业已排队并处理,一封电子邮件已排队并处理。
有人知道为什么不发送 cc 和 bcc 电子邮件吗?
【问题讨论】:
-
这能回答你的问题吗? Laravel mail bcc
-
试过了,但是开发人员让函数接受@param object|array|string $address,所以它没有回答问题。