Mengirim email di laravel sudah sangat mudah dengan adanya mail. Bila anda butuh contoh sederhana untuk test konfigurasi SMTP di Laravel bisa meneruskan tutorial ini.
Disini kita hanya akan menggunakan mail tanpa Mailable, agar tetap sederhana dan bisa diselesaikan kurang dari 1 menit.
Bila anda belum memiliki project untuk laravel, buat baru dengan
composer create-project --prefer-dist laravel/laravel kiriemail
Setelah menginstall laravel, pindah ke folder kirimemail
, folder inilah yang akan menjadi root direktori laravel yang kita miliki.
Beberapa email transaction provider yang bisa digunakan Amazon SES, Mailgun, Mailtrap. Pada contoh kali ini kita akan menggunakan Mailtrap, konsepnya sama saja hal yang membedakan mail trap dengan yang lain adalah, semua email yang dikirim ke manapun akan masuk kedalam inbox mailtrap, jadi tidak perlu khawatir salah kirim.
Bila belum memiliki akun mailtrap, daftar terlebih dahulu disini. Setelah login anda nanti mendapat credential kurang lebih seperti
Host : smtp.mailtrap.io Port : 25 or 465 or 587 or 2525 Username : 6d8642858ba40a Password : 89a62278345b92 Auth : PLAIN, LOGIN and CRAM-MD5 TLS : ptional (STARTTLS on all ports)
Buka .env lalu sesuaikan dengan konfigurasi diatas, kurang lebih seperti dibawah ini
MAIL_DRIVER=smtp MAIL_HOST=smtp.mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=af1f5b6706704a MAIL_PASSWORD=681a9cd70e4b35 MAIL_ENCRYPTION=null MAIL_FROM_ADDRESS="laravel@jaranguda.com" MAIL_FROM_NAME="${APP_NAME}"
Buka routes/web.php
, dibaris paling bawah tambahkan
Route::get('/kirim-email', function () { \Mail::send([], [], function ($message) { $message->to('user@db.jaranguda.com') ->subject("Ini Subject Email") ->setBody("Ini Body Email"); }); });
ganti user@db.jaranguda.com
dengan email yang inginkan.
Jalankan Laravel development server
php artisan serve
lalu buka http://127.0.0.1:8000/kirim-email
. Tunggu beberapa saat check mailtrap, email sudah muncul seperti gambar dibawah