アプリケーションのユーザーごとに異なる SMTP 構成を使用しようとしています。そのため、Swift_SmtpTransport を使用して新しいトランスポート インスタンスを設定し、それを Swift_Mailer に割り当ててから、Laravel Mailer に割り当てます。
完全なスニペットの下:
$transport = Swift_SmtpTransport::newInstance($mailConfig['smtp_host'], $mailConfig['smtp_port'], 'ssl');
$transport->setUsername($mailConfig['smtp_user']);
$transport->setPassword($mailConfig['smtp_pass']);
$smtp = new Swift_Mailer($transport);
Mail::setSwiftMailer($smtp);
Mail::queue(....);
メッセージはキューに追加されますが、ディスパッチされることはありません。「実際の」送信は非同期であるため、Mail::queue() の前に設定されたトランスポートではなく、デフォルトの SMTP 構成を使用すると思います。
問題は、Mail::queue() を使用するときにメール転送を変更するにはどうすればよいかということです。