Email

The Email library allows you to send emails and email templates.

sendEmail

Send email.

loader::library('email');
$email = 'john@email.com';
$subject = 'Example subject';
$messageText = 'Example message'; // plain text message
$messageHTML = '<p>Example message</p>'; // html message
$this->email->sendEmail($email, $subject, $messageText, $messageHTML);

// Add replaceable tags
$subject = 'Hey [name]';
$tags = array('name' => 'John');
$this->email->sendEmail($email, $subject, $messageText, $messageHTML, $tags);

// Add the entire user session array (includes username, email, profile fields, etc)
$tags = session::section('session');
$this->email->sendEmail($email, $subject, $messageText, $messageHTML, $tags);

sendTemplate

Send email template.

loader::library('email');

// Send 'welcome' email
$email = 'john@email.com';
$tags = session::section('session');
$this->email->sendTemplate('users_account_welcome', $email, $tags);

// Send email template in user's selected language
$user = $this->users_model->getUser('john@email.com'); // get user from the database
$this->email->sendTemplate('users_account_welcome', $user['email'], $user, $user['language_id']);