Skip to content

Lightweight Multi-SMTP Configuration Helper for Your CodeIgniter 4 Application

License

Notifications You must be signed in to change notification settings

warcooft/codeigniter4-multi-smtp-config

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CodeIgniter Multiple SMTP Configuration

A lightweight Multi-SMTP configuration helper for your CodeIgniter 4 application. This package allows you to use different email accounts simultaneously.

CodeIgniter PHP Version Require

Installation

composer require aselsan/codeigniter4-multi-smtp-config

Publish File Config

php spark smtpconfig:publish

After that, check the app/Config/MultiEmail.php file, and set it up with your email credentials.

Configuring SMTP in the .env File

We recommend setting the configuration for each SMTP email in the .env file instead of using app/Config/MultiEmail.php.

For example, you can proceed as follows:

#--------------------------------------------------------------------
# MULTI-SMTP CONFIGURATION SETTINGS
#--------------------------------------------------------------------

# email.default.fromName =
# email.default.fromEmail =
# email.default.protocol = smtp
# email.default.SMTPUser =
# email.default.SMTPPass =
# email.default.SMTPHost = smtp.gmail.com
# email.default.SMTPPort = 587

# email.outlook.fromName =
# email.outlook.fromEmail =
# email.outlook.protocol = smtp
# email.outlook.SMTPUser =
# email.outlook.SMTPPass =
# email.outlook.SMTPHost = smtp.office365.com
# email.outlook.SMTPPort = 587

Usage

helper('multi_email');

$email = multi_email(['mailType' => 'html']);
$email->setTo('[email protected]');
$email->setSubject("Test Send Mail");
$email->setMessage('Hi, Bonjour');

if ($email->send(false) === false) {
       throw new Exception('Cannot send email:' . $email->printDebugger(['headers']));
}

// Clear the email
$email->clear();

You can use a different mail config by providing the group name in the second parameter.

helper('multi_email');

$email = multi_email(['mailType' => 'html'], 'outlook');
$email->setTo('[email protected]');
$email->setSubject("Test Send Mail");
$email->setMessage('Hi, Bonjour');

if ($email->send(false) === false) {
       throw new Exception('Cannot send email:' . $email->printDebugger(['headers']));
}

// Clear the email
$email->clear();

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Lightweight Multi-SMTP Configuration Helper for Your CodeIgniter 4 Application

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages