laravel如何使用不同的邮箱给用户发邮件

用laravel的mail类给用户发送邮件。我之前只设置了一个邮箱账号和密码,给用户发送邮件是没问题的。现在需求要求使用不同的邮箱地址给用户发邮件。比如:我之前的邮箱是abc@test.com 密码是123456 , 我用的smtp驱动,发送邮件是可以实现的。现在增加一个12345@test.com 密码是654321 ,其他的配置都不变, 我现在要把这个邮件也要用于给特定用户发送邮件。不知用什么方法实现?

阅读 4.6k
2 个回答

在需要使用其它账号的地方,自己创建一个新的Swift_Mailer来发送邮件

// 备份原有Mailer
$backup = Mail::getSwiftMailer();

// 设置邮箱账号
$transport = Swift_SmtpTransport::newInstance('smtp.qq.com', 25, 'tls');
$transport->setUsername('email_username');
$transport->setPassword('email_password');

$mailer = new Swift_Mailer($transport);

Mail::setSwiftMailer($mailer);

Mail::send();

// 发送后还原
Mail::setSwiftMailer($backup);
新手上路,请多包涵

这个现在好像不好使了