composer require govelid/multi-smtp-mailer
This package allow you set multiple smtp mailer dynamically from database, it is more secure than you have to set your credentials mail at your config or .env file
- 1. You need setup your database
- 2. Run
composer require govelid/multi-smtp-mailer
- 3. Modify the composer.json file in your Laravel app by adding the following lines to the autoload section:
"psr-4": { "App\\": "app/", "Govelid\\MultiSmtpMailer\\": "vendor/govelid/multi-smtp-mailer/src/" }
- 4. Run
composer dump-autoload
- 5. Publish the migration file :
php artisan vendor:publish --provider="Govelid\MultiSmtpMailer\MailConfigServiceProvider"
- 6. Run
php artisan migrate
- 7. Create new data mailer at mail_settings table , for first mail default mailer is 'smtp' , the next mailer you can give custom name
- 8. Tes your mail
- Default mailer : Mail::to($recipient)->send(new Mail)
- Custom mailer : Mail::mailer('custommailer)->to($recipient)->send(new Mail)
- Use as is Laravel Eloquent Model , example display all data form table mail_settings:
MailSetting::all();
- Dont forget to add
use Govelid\MultiSmtpMailer\MailSetting;