Laravel ile eposta gönderme işlemini yapabilirsiniz. Laravel eposta gönderimini yaparken SwiftMailer ile yapmaktadır. (http://swiftmailer.org/docs/introduction.html )
SMTP üstünden mail göndermek istiyorsanız öncelikle SMTP bilgilerinizi girmeniz gerekmektedir. Demo için app/config/mail.php dosyasını açın ve örnek olarak domain bilgilerinizi girin.
'driver' => 'smtp' , 'host' => 'smtp.domain.com' , 'port' => 465, 'encryption' => 'ssl', 'username' => 'epostaadresiniz@domain.com', 'password' => 'eposta şifreniz',Yukarıda gördüğünüz gibi eposlarınız ssl ile iletilecektir. SSL ile iletimesi için ufak php.ini dosyasında değişiklik yapmanız gerekmekte. php.ini dosyasında bulunan OpenSLL desteğini açarak gönderim yapabilirsiniz.
- Php.ini dosyasını açın,
- Ardından " ;extension=php_openssl.dll satırını bulun,
- Önünde bulunan " ; " kaldırın ve kaydedin. Unutmayın: Apache sunucusunu yeniden başlatmanız gereklidir.
Ardından şablonumuzu oluşturalım. Aşağıda ki şablonu " app/views/emails/sablon.blade.php" olarak kaydedin..
<!DOCTYPE html>
<html lang="tr">
<head><meta charset ="utf-8"></head>
<body>
<h2>Laravel İle Eposta Gönderimi</h2>
<div>{{ $detay }}</div>
<div>{{ $ad }}</div>
</body>
</html>Ardından aşağıda vereceğim kodları routes.php kaydedin ve http://localhost/public/eposta şeklinde çağırın// app/routes.php
Route:: get (' /eposta' , function() {
//burada epostayı gondereceğimiz kişiyi tanımlayalım
$uye = array(
'email' => 'eposta@eposta.com' ,
'ad' => 'Deneme Kişi'
);
//Şablon dosyasına yazacağımız verileri tanımlayalım
$bilgi = array(
'detay' => 'Buraya Detayları Girelim' ,
'ad' => $uye['ad']
);
$ok= mail:: send('emails.sablon' , $bilgi, function($mesaj) use ($uye]{
$message->from('email@domain.com' , 'Admin');
$message->to($uye['email'], $uye['ad']) -> subject('laravel mail test yapıyoruz');
});
echo $ok ? 'Eposta başarıyla gönderildi' : 'Başarısız' ;
});İyi çalışmalar.
