我想根据应用程序的上下文使用不同的smtp帐户发送电子邮件。所以我找到了这个答案,但它只适用于更改用户名和密码。
Changing smtp settings in SwiftMailer dynamically
我也需要动态更改主机。
任何想法都将受到赞赏。
答案 0 :(得分:6)
与设置用户名和密码的方式相同,您可以设置主机,端口和加密:
$transport = $fromYourMailerVariable->getTransport();
$transport
->setUserName(...)
->setPassword(...)
->setHost(...)
->setPort(...)
->setEncryption(...);
或者只是创建不同的邮件程序(使用不同的传输):
$transport1 = Swift_SmtpTransport::newInstance('localhost');
$transport2 = Swift_SmtpTransport::newInstance('smtp.domain.com', 666)
->setUsername('user')
->setPassword('pass');
$transport3 = Swift_SendmailTransport::newInstance('/usr/sbin/exim -bs');
$transport4 = Swift_MailTransport::newInstance();