Here is a little helper class that allows to easily send email with Laravel without using views.
class EmailHelper{
/**
* Sends an email
*
* EmailHelper::sendMail(array(
* 'From' => 'sender@email.com',
* 'To' => 'recipient@email.com',
* 'Cc' => 'cc@email.com',
* 'Bcc' => 'bcc@email.com',
* 'Text' => 'Here is the text part',
* 'Html' => '
Here is the HTML part
',
* 'Subject' => 'This is a test email at ' . date('Y-m-d H:i:s'),
* ));
*
* @return boolean
*/
public static function sendMail($parameters, $debug = false) {
\Mail::send([], [], function ($message) use ($parameters) {
if (isset($parameters['From']) AND $parameters['From'] != "") {
$message->from($parameters['From']);
}
if (isset($parameters['From']) AND $parameters['From'] != "") {
$message->sender($parameters['From']);
}
if (isset($parameters['To']) AND $parameters['To'] != "") {
$message->to($parameters['To']);
}
if (isset($parameters['Cc']) AND $parameters['Cc'] != "") {
$message->cc($parameters['Cc']);
}
if (isset($parameters['Bcc']) AND $parameters['Bcc'] != "") {
$message->bcc($parameters['Bcc']);
}
if (isset($parameters['From']) AND $parameters['From'] != "") {
$message->replyTo($parameters['From']);
}
if (isset($parameters['Subject']) AND $parameters['Subject'] != "") {
$message->subject($parameters['Subject']);
}
if (isset($parameters['Html']) AND $parameters['Html'] != "") {
$message->setBody($parameters['Html'], 'text/html');
}
if (isset($parameters['Text']) AND $parameters['Text'] != "") {
$message->addPart($parameters['Text'], 'text/plain');
}
});
if (count(\Mail::failures()) > 0) {
return false;
}
return true;
}