Please wait...
Suggest:

Laravel send email without Mailable

Last update at September 19, 2022 by

Introduction

Sometimes I forget how to send email in laravel without having to create a Mailable, and every time I get that problem, I always do a search on the internet, it’s quite often. finally after I created this blog and one of its functions is to document problems when I work. so I made this article because maybe you guys also have the same problem as me.

How to do that ?

Here’s how to send email in laravel without creating ‘Mailable‘ first.

1. Send Raw Message (Plain Text)

<?php

$email   = '[email protected]';
$subject = 'This is the subject of the email;

Mail::raw('Hello, welcome to Laravel!', function ($message) use($email, $subject) {
  $message->to($email)->subject($subject);
});

Refferance : https://github.com/illuminate/mail/blob/v9.24.0/Mailer.php#L205

2. Send Plain Text Message with variable in body

<?php

$email   = '[email protected]';
$subject = 'This is the subject of the email';

Mail::plain('Hello {{ $name }}, welcome to Laravel!', ['name' => 'Dani'] function ($message) use($email, $subject) {
  $message->to($email)->subject($subject);
});

Refferance : https://github.com/illuminate/mail/blob/v9.24.0/Mailer.php#L218

3. Send Message with Blade Template

<?php

//Send email with data and template from 'resource/views'


$email   = '[email protected]';
$subject = 'This is the subject of the email';

$data = [
    "name" => "Dani"
];

Mail::send('template.email', $data, function ($message) use($email, $subject) {
  $message->to($email)->subject($subject);
});

Refference : https://github.com/illuminate/mail/blob/v9.24.0/Mailer.php#L250

Conclution

Those are some ways to send email in Laravel without having to create a Mailable, you can use it directly in the controller or in Tinker.

To get more knowledge, you can learn it directly from the source code on github or the laravel documentation

Postingan Lainnya

©2024