LoginSignup
1
1

More than 5 years have passed since last update.

Laravel3 バンドルの Swift Mailer をバンドルディレクトリのファイルを変更せずにSMTPでメールを送信する

Posted at

バンドルディレクトリの中にあるファイルは直接編集したくないが、メーラーオブジェクトの取得を $mailer = IoC::resolve('mailer') でしたい人向け。

start.php なり routes.php なりに以下のコードを追加します。

Bundle::start('swiftmailer');
IoC::unregister('mailer.transport');
IoC::register('mailer.transport', function()
{
    return Swift_SmtpTransport::newInstance('SMTPサーバ, 'ポート番号', '暗号方式')
                ->setUsername('ユーザ名')
                ->setPassword('パスワード');
    });

$mailer = IoC::resolve('mailer') で呼び出すよりも前に IoC::unregister() しなければいけない。その上、バンドルもスタートされてなければいけないので、 start.php など早い段階で実行されるファイルで Bundle::start() をつかって明示的にバンドルを開始しするのがポイント。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1