SMTP Mail Kütüphanesi
SMTP Mail kütüphanesi, SMTP üzerinden mail gönderimini sağlar. PHPMailer
kütüphanesinden türetilmiştir.
- SMTP Ayarlarının Yapılandırılması
- Gönderici Tanımlama » setFrom()
- Alıcı Tanımlama » addAddress()
- Cevap Adresi Tanımlama » addReplyTo()
- CC ve BCC Tanımlama » addCC(), addBCC()
- Dosya Ekleme » addAttachment()
- Mail Konusunu Belirleme » subject()
- Mail İçeriğini Belirleme » body()
- Plain-Text Mail İçeriğini Belirleme » altBody()
- Mail Gönderme » send()
- Mail Gönderim Hatalarını Yakalama » getError()
SMTP Ayarlarının Yapılandırılması
SMTP ile ilgili ayarlar /App/Config
dizininde bulunan App.php
dosyasındaki smtp
anahtarında yer alır. Varsayılan olarak buradaki ayarlar dikkate alınırken, istendiği takdirde kütüphane içerisindeki init()
methodu ile ayarlarda özelleştirme yapılabilir.
//--- [*] App/Config/App.php ---//
'email' => [
'server' => '',
'port' => 25,
'username' => '',
'userpass' => '',
'charset' => 'utf-8',
],
# init()
SMTP ayarlarını, uygulamanın herhangi bir bölümünde özelleştirmek için init()
methodu kullanılır. Aşağıdaki anahtarları içeren bir array değişkeni parametre olarak alır;
Mail::init([
'server' => '127.0.0.1',
'port' => 25,
'username' => 'username',
'userpass' => 1234,
'charset' => 'utf-8',
'isHtml' => true
]);
# setHost()
SMTP Mail Server bilgisini tanımlamak için kullanılır.
Mail::setHost('127.0.0.1');
# setPort()
SMTP Port numarasını tanımlamak için kullanılır.
Mail::setPort(25);
# setUsername()
SMTP kullanıcı adını tanımlamak için kullanılır.
Mail::setUsername('username');
# setPassword()
SMTP kullanıcı şifresini tanımlamak için kullanılır.
Mail::setPassword('1234');
# setCharset()
Mail charset değerini tanımlamak için kullanılır.
Mail::setCharset('utf-8');
# setHtml()
Mail içeriğinin HTML olup olmadığını belirtmek için kullanılır.
Mail::setHtml(true);
Gönderici Tanımlama
Mail gönderirken, gönderici E-Posta adresini ve ismini belirtmek için setFrom()
methodu kullanılır. Gönderici E-Posta adresi ve ismi parametre olarak verilir.
Parametre | Veri Tipi | Açıklama |
---|---|---|
String | Gönderici E-Postası | |
$fullname | String | Gönderici adı |
Mail::setFrom('info@titanphp.com', 'Titan Framework');
Alıcı Tanımlama
Mail gönderirken, alıcı E-Posta adresini ve ismini belirtmek için addAddress()
methodu kullanılır. Alıcı E-Posta adresi ve ismi parametre olarak verilir.
Parametre | Veri Tipi | Açıklama |
---|---|---|
String | Alıcı E-Postası | |
$fullname | String | Alıcı adı |
Mail::addAddress('info@mail.com', 'John Doe');
Cevap Adresi Tanımlama
Mail kütüphanesi ile gönderilen mail cevaplanmak istendiğinde, cevap mailinin gönderileceği e-posta adresini tanımlamak için addReplyTo()
methodu kullanılır. E-Posta adresi ve isim parametre olarak verilir.
Parametre | Veri Tipi | Açıklama |
---|---|---|
String | Cevap alıcı E-Postası | |
$fullname | String | Cevap alıcı adı |
Mail::addReplyTo('info@titanphp.com', 'Titan Framework');
CC ve BCC Tanımlama
Mail gönderirken, CC ve BCC adresleri tanımlamak için addCC()
ve addBCC()
methodları kullanılır. Alıcı E-Posta adresi ve ismi her iki methoda da parametre olarak verilir.
Parametre | Veri Tipi | Açıklama |
---|---|---|
String | Alıcı E-Postası | |
$fullname | String | Alıcı adı |
Mail::addCC('user_1@mail.com', 'User 1');
Mail::addBCC('user_2@mail.com', 'User 2');
Dosya Ekleme
Gönderilecek maile dosya eklemek için (attachment) addAttachment()
methodu kullanılır. Eklenecek dosyanın yolu parametre olarak verilir.
Parametre | Veri Tipi | Açıklama |
---|---|---|
$filepath | String | Dosya yolu |
Mail::addAttachment('/var/tmp/file.gz');
Mail Konusunu Belirleme
Gönderilecek mailin konusunu belirtmek için subject()
methodu kullanılır. Konu bilgisi parametre olarak verilir.
Parametre | Veri Tipi | Açıklama |
---|---|---|
$subject | String | Mail konusu |
Mail::subject('Mail Konusu');
Mail İçeriğini Belirleme
Gönderilecek mailin içeriğini belirtmek için body()
methodu kullanılır. Mail içeriği parametre olarak verilir.
Parametre | Veri Tipi | Açıklama |
---|---|---|
$body | String | Mail içeriği |
Mail::body('Bu bir HTML <b>mail</b> içeriğidir');
Plain-Text Mail İçeriğini Belirleme
Gönderilecek mailin, HTML desteklemeyen istemcilere uygun plain-text içeriğini belirtmek için altBody()
methodu kullanılır. Mail içeriği parametre olarak verilir.
Parametre | Veri Tipi | Açıklama |
---|---|---|
$body | String | Mail içeriği |
Mail::altBody('Bu bir Plain-Text mail içeriğidir');
Mail Gönderme
Gerekli tanımlamalar yapıldıktan sonra, mail gönderimi için send()
methodu kullanılır.
Mail::send();
Mail Gönderim Hatalarını Yakalama
Mail gönderimi sırasında oluşan hataları yakalamak için getError()
methodu kullanılır.
if (!Mail::send())
{
echo Mail::getError();
}