HOTLINE

(0275) 2974 127

CHAT WA 24/7
0859-60000-390 (Sales)
0852-8969-9009 (Support)
Blog

Cara Mengirim Email SMTP di Laravel dengan PHPMailer (Tutorial Lengkap & Mudah)

Pengiriman email merupakan fitur penting dalam sebuah aplikasi web, seperti untuk verifikasi akun, notifikasi, hingga reset password. Dalam framework Laravel, sebenarnya sudah tersedia fitur mail bawaan. Namun, dalam beberapa kasus, developer memilih menggunakan library tambahan seperti PHPMailer karena lebih fleksibel dan mudah dikustomisasi.

Pada artikel ini, kita akan membahas cara menggunakan PHPMailer untuk mengirim email SMTP di Laravel secara lengkap dan mudah dipahami, bahkan untuk pemula.

Apa Itu PHPMailer?

PHPMailer adalah library populer berbasis PHP yang digunakan untuk mengirim email melalui SMTP dengan konfigurasi yang lebih lengkap dibandingkan fungsi mail() bawaan PHP. Library ini banyak digunakan oleh developer karena kemampuannya yang lebih fleksibel dan andal dalam menangani pengiriman email.

PHPMailer mendukung berbagai fitur penting seperti SMTP authentication, penggunaan enkripsi SSL/TLS untuk keamanan, serta kemampuan mengirim attachment file. Selain itu, PHPMailer juga dikenal lebih stabil dan memiliki sistem error handling yang lebih jelas, sehingga memudahkan proses debugging ketika terjadi kesalahan dalam pengiriman email.

Alasan Menggunakan PHPMailer di Laravel

Meskipun Laravel sudah menyediakan fitur pengiriman email bawaan yang cukup lengkap, banyak developer tetap memilih menggunakan PHPMailer karena menawarkan fleksibilitas yang lebih tinggi. PHPMailer memungkinkan pengaturan konfigurasi yang lebih bebas sesuai kebutuhan, terutama untuk proyek dengan kebutuhan khusus atau custom script.

Selain itu, proses debugging juga menjadi lebih mudah karena pesan error yang ditampilkan lebih jelas dan detail. Keunggulan lainnya, PHPMailer dapat digunakan secara terpisah di luar sistem Laravel Mail, sehingga cocok bagi developer yang ingin solusi pengiriman email yang lebih mandiri dan tidak terlalu bergantung pada fitur bawaan framework.

Persiapan Sebelum Memulai

Pastikan kamu sudah memiliki:

  • Laravel terinstall
  • Composer aktif
  • Akun SMTP (Gmail, Outlook, atau hosting)

Install PHPMailer di Laravel

Masuk ke folder project Laravel, lalu jalankan perintah berikut:

composer require phpmailer/phpmailer

Setelah itu, PHPMailer akan otomatis terpasang di project kamu.

Konfigurasi SMTP

Berikut contoh konfigurasi SMTP menggunakan Gmail:

  • Host: smtp.gmail.com
  • Port: 587
  • Encryption: TLS
  • Username: email@gmail.com
  • Password: app password (bukan password biasa)

Membuat Script Kirim Email dengan PHPMailer

Buat controller baru, misalnya:

php artisan make:controller MailController

Lalu isi dengan script berikut:

<?php

namespace App\Http\Controllers;

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

class MailController extends Controller
{
public function sendEmail()
{
$mail = new PHPMailer(true);

try {
// Konfigurasi SMTP
$mail->isSMTP();
$mail->Host = ‘smtp.gmail.com’;
$mail->SMTPAuth = true;
$mail->Username = ’email@gmail.com’;
$mail->Password = ‘app_password’;
$mail->SMTPSecure = ‘tls’;
$mail->Port = 587;

// Pengirim & penerima
$mail->setFrom(’email@gmail.com’, ‘Nama Kamu’);
$mail->addAddress(‘tujuan@gmail.com’);

// Konten email
$mail->isHTML(true);
$mail->Subject = ‘Test Email Laravel PHPMailer’;
$mail->Body = ‘<h3>Email berhasil dikirim!</h3>’;

$mail->send();

return “Email berhasil dikirim!”;
} catch (Exception $e) {
return “Email gagal dikirim. Error: {$mail->ErrorInfo};
}
}
}

Menambahkan Route

Tambahkan route berikut di file web.php:

use App\Http\Controllers\MailController;

Route::get(‘/send-email’, [MailController::class, ‘sendEmail’]);

Akses di browser:

http://localhost:8000/send-email

Tips Menggunakan SMTP Gmail

Jika menggunakan Gmail:

  • Aktifkan 2-Step Verification
  • Gunakan App Password
  • Jangan gunakan password email utama

Kelebihan dan Kekurangan PHPMailer

1. Kelebihan:

  • Mudah digunakan
  • Dokumentasi lengkap
  • Support banyak fitur email
  • Cocok untuk custom kebutuhan

2. Kekurangan:

  • Tidak terintegrasi langsung dengan Laravel
  • Perlu setup manual
  • Tidak sepraktis Laravel Mail

Alternatif Selain PHPMailer di Laravel

Jika tidak ingin menggunakan PHPMailer, kamu bisa memakai:

  • Laravel Mail (bawaan Laravel)
  • SwiftMailer (deprecated tapi pernah populer)
  • Symfony Mailer

Kesimpulan

Menggunakan PHPMailer di Laravel adalah solusi alternatif yang fleksibel untuk mengirim email melalui SMTP, terutama jika kamu membutuhkan kontrol lebih dalam konfigurasi dan pengiriman email. Dengan setup yang cukup sederhana, kamu sudah bisa mengirim email secara aman dan profesional.

Jika kamu ingin menjalankan aplikasi Laravel dengan performa maksimal, pastikan menggunakan layanan hosting yang cepat dan stabil. Kamu bisa mengunjungi Hosteko.com untuk mendapatkan layanan domain dan hosting terpercaya. Selain itu, jangan lupa juga untuk membaca berbagai tutorial menarik lainnya di Blog Hosteko yang membahas seputar website, hosting, dan pengembangan web secara lengkap dan mudah dipahami.

5/5 - (1 vote)
Fitri Ana

Recent Posts

Bootstrap Adalah: Fungsi, Fitur, Kelebihan & Cara Menggunakan Bootstrap

Dalam dunia pengembangan website modern, kecepatan, efisiensi, dan tampilan responsif menjadi faktor utama dalam membangun…

23 hours ago

Menu Weebly: Cara Membuat, Mengatur, dan Optimasi Navigasi Website

Dalam pembuatan website, menu navigasi memegang peran penting dalam menentukan kenyamanan pengunjung saat menjelajahi halaman.…

1 day ago

Lossy vs Lossless Compression: Perbedaan dan Dampaknya untuk Website

Perkembangan teknologi digital telah membawa perubahan besar dalam cara manusia menyimpan, mengelola, dan mendistribusikan data.…

1 day ago

CMS Balitbang: Pengertian, Fungsi, Manfaat, dan Cara Implementasinya

Di era digital saat ini, lembaga penelitian dan pengembangan (Balitbang) dituntut untuk mampu mengelola serta…

1 day ago

Taksonomi WordPress: Pengertian, Jenis, Cara Membuat & Manfaat SEO

Dalam membangun sebuah website modern, struktur konten menjadi fondasi utama agar informasi dapat tersusun rapi,…

2 days ago

Flywheel dalam Bisnis: Strategi Growth Modern

Dalam beberapa tahun terakhir, strategi marketing mengalami perubahan besar seiring berkembangnya teknologi digital dan perilaku…

2 days ago