Fungsi PHP mail()
Mengirim pesan email sangat umum untuk sebuah aplikasi web, misalnya, mengirim email sambutan ketika pengguna membuat akun di situs web kalian, mengirim buletin kepada member user kalian, atau mendapatkan feedback atau komentar pengguna melalui formulir kontak situs web, dan sebagainya.
Kalian dapat menggunakan fungsi PHP mail() bawaan untuk membuat dan mengirim pesan email ke satu atau lebih penerima secara dinamis dari aplikasi PHP kalian baik dalam bentuk teks biasa atau HTML yang diformat. Sintaks dasar fungsi ini dapat diberikan dengan:
mail(to, subject, message, headers, parameters)
Tabel berikut ini merangkum parameter dari fungsi ini.
| Parameter | Description |
|---|---|
| Required — The following parameters are required | |
to | Alamat email penerima. |
subject | Subjek dari email yang akan dikirim. Parameter ini yaitu, baris subjek tidak dapat berisi karakter baris baru ( \n ). |
message | Menentukan pesan yang akan dikirim. Setiap baris harus dipisahkan dengan feed garis-LF ( \n ). Garis tidak boleh lebih dari 70 karakter. |
| Optional — The following parameters are optional | |
headers | Ini biasanya digunakan untuk menambahkan tajuk tambahan seperti “Dari”, “Cc”, “Bcc”. Header tambahan harus dipisahkan dengan carriage return plus line feed-CRLF ( \r\n ). |
parameters | Digunakan untuk melewati (pass) parameter tambahan. |
Mengirim Email Teks Biasa
Cara paling sederhana untuk mengirim email dengan PHP adalah mengirim email teks. Pada contoh di bawah ini, pertama-tama kita mendeklarasikan variabel —- alamat email penerima, baris subjek, dan isi pesan —- kemudian kita meneruskan variabel-variabel ini ke fungsi mail() untuk mengirim email.
<?php
$to = 'maryjane@email.com';
$subject = 'Marriage Proposal';
$message = 'Hi Jane, will you marry me?';
$from = 'peterparker@email.com';
// Sending email
if(mail($to, $subject, $message)){
echo 'Your mail has been sent successfully.';
} else{
echo 'Unable to send email. Please try again.';
}
?>
Mengirim Email Berformat HTML
Saat kalian mengirim pesan teks menggunakan PHP, semua konten akan diperlakukan sebagai teks sederhana. Kita akan meningkatkan output itu, dan membuat email menjadi email berformat HTML.
Untuk mengirim email HTML, prosesnya akan sama. Namun, kali ini kita perlu memberikan tajuk tambahan serta pesan berformat HTML.
<?php
$to = 'maryjane@email.com';
$subject = 'Marriage Proposal';
$from = 'peterparker@email.com';
// To send HTML mail, the Content-type header must be set
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// Create email headers
$headers .= 'From: '.$from."\r\n".
'Reply-To: '.$from."\r\n" .
'X-Mailer: PHP/' . phpversion();
// Compose a simple HTML email message
$message = '<html><body>';
$message .= '<h1 style="color:#f40;">Hi Jane!</h1>';
$message .= '<p style="color:#080;font-size:18px;">Will you marry me?</p>';
$message .= '</body></html>';
// Sending email
if(mail($to, $subject, $message, $headers)){
echo 'Your mail has been sent successfully.';
} else{
echo 'Unable to send email. Please try again.';
}
?>