我使用下面的代码首先设置 smtp 配置,然后尝试将邮件发送到需要设置一些标头的位置。但我无法做到。请查看我的代码并帮助我实现我的目标。这是我的代码。
$stmp = [
'mail.mailers' => ['user_stmp' => [
'transport' => 'smtp',
'host' => $sender_info->smtp_host_name,
'port' => $sender_info->smtp_port,
'encryption' => $sender_info->smtp_port == '465' ? 'ssl' : 'tls',
'username' => $sender_info->smtp_user_name,
'password' => $sender_info->smtp_password,
'from' =>
[
//FIXME TWO BOTTOM LINES MUST BE GIVEN A DO OVER PROBABLY
'address' => $sender_email,
'name' => $sender_name,
],
]]
];
config()->set($stmp);
Mail::mailer('user_stmp')->send('emails.reply', [
'from' => $sender_email,
'body' => $request->body,
], function ($m) use ($sender_email, $sender_name, $request,$reply) {
$m->from($sender_email, $sender_name);
$m->to($request->to_mail)->subject($request->subject);
if ($request->cc)
{
$m->cc($request->cc);
}
if ($request->bcc)
{
$m->bcc($request->bcc);
}
/*$m->getHeaders()
->addTextHeader('Message-ID', $reply->message_id)
->addTextHeader('In-Reply-To', $reply->in_reply_to)
->addTextHeader('References', $reply->refs);*/
$m->withSwiftMessage(function ($message) use ($reply) {
$headers = $message->getHeaders();
$headers->addTextHeader('Message-ID', $reply->message_id);
$headers->addTextHeader('In-Reply-To', $reply->in_reply_to);
$headers->addTextHeader('References', $reply->refs);
});
});
现在我收到以下错误
"Call to undefined method Illuminate\\Mail\\Message::withSwiftMessage()"
withSwiftMessage() 在 Laravel 9 中已重命名为 withSymfonyMessage()。