1

アプリケーションのコンテキストに応じて、メールの送信に別の smtp アカウントを使用したいと考えています。だから私はこの答えを見つけましたが、ユーザー名とパスワードを変更する場合にのみ機能します。

SwiftMailer の smtp 設定を動的に変更する

ホストも動的に変更する必要があります。

どんなアイデアでも大歓迎です。

4

1 に答える 1

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();
于 2013-11-14T15:08:44.577 に答える