IMAP Kütüphanesi


    × Bunları biliyor muydunuz?
"ZN Framework'te Masterpage kütüphanesi ile çok basit bir şekilde web iskeleti oluşturabilirsiniz."


(ZN >= 6.0.23)

IMAP üzerinden e-posta sunucuları ile bağlantı kurup e-posta sunucunuzu yönetmenizi sağlar.

 

 

# Gereksinimler


Sunucunuzda imap_* eklentisinin açık olması gerekmektedir. 

 

 

# Kurulum


ZN dağıtımları için kurulum gerekmez.

↓ composer require znframework/package-email

 

 

# Yapılandırma


Dosya: Config/Services.php
Email
String $host = '' Bağlantı sağlanacak host adı. Örnek: imap.yandex.com.tr
String $user = '' Kullanıcı adı. Örnek: my@email.com
String $password = '' Kullanıcı şifresi. Örnek: mypass
Int $port = 993 Varsayılan bağlantı portu.
Int $flags = [] Bağlantı imleri. Örnek: ['imap', 'ssl']
Bool $mailbox = 'INBOX' Varsayılan bağlantı klasörü. 

 

 

# Yöntemler


6.0.23 Array list(String $type = 'all')
6.0.23 Object mail(Int $mailId)
6.0.23 Bool move($mailId, String $folder = 'Spam')
6.0.23 Bool delete($mailId)
6.0.23 Bool changeStatus($mailId, String $status)
6.0.23 Bool createFolder(String $folder)
6.0.23 Bool deleteFolder(String $folder)
6.0.23 Bool renameFolder(String $name, String $newName)
6.0.23 String error(Void)

 

 

# List (ZN >= 6.0.23)


Mail kutusunda yer alan e-postaların eşşiz ID bilgilerini listeler. Bu ID bilgisi diğer yöntemlerde ifade edilen $mailId parametresini ifade etmektedir.

Parametreler

String $type = 'all' Listelenecek e-posta türleri. Harf duyarlılığı yoktur.
ALL Tüm e-postalar.
ANSWERED Answered imi ile işaretlenen e-postalar.
SEEN Seen imi ile işaretlenen e-postalar
DELETED Silinmiş e-postalar.
FLAGGED İşaretlenmiş e-postalar.
NEW Yeni e-postalar.
OLD Eski e-postalar.
RECENT Recent imi ile işaretlenen e-postalar.
UNANSWERED Cevaplanmamış e-postalar.
UNSEEN Okunmamış e-postalar.
UNDELETED Silinememiş e-postalar.
UNFLAGGED İşaretlenmemiş e-postalar.
BCC "string" BCC içerisinde geçen e-postalar.
CC "string" CC içerisinde geçen e-postalar.
TO "string" TO içerisinde geçen e-postalar.
FROM "string" FROM içerisinde geçen e-postalar.
SUBJECT "string" SUBJECT içerisinde geçen e-postalar.
BODY "string" BODY içerisinde geçen e-postalar.
TEXT "string" TEXT dizgesi ile eşleşen e-postalar.
UNKEYWORD "string" Dizge ile eşleşmeyen e-postalar.
ON "date" Belirtilen tarihteki e-postalar.
BEFORE "date" Belirtilen tarihten önceki e-postalar.
SINCE "date" Belirtilen tarihten sonraki e-postalar.
Return Bool

Kullanımlar

output(IMAP::list()); # Tüm e-postalar
output(IMAP::list('UNSEEN')); # Okunmamış e-postalar
output(IMAP::list('CC robot')); # CC içerisinde "robot" ifadesi olan e-postalar.
output(IMAP::list('since 2019-12-5')); # 2019-12-5 tarinden sonra gelen e-postalar.

 

 

# Mail (ZN >= 6.0.23)


E-posta ID bilgisine göre ilgili e-posta adresi ile ilgili detaylı bilgileri verir.

Parametreler

Int $mailId İlgili e-posta ID bilgisi.
Return Object

Dönen Değerler

String $subject Konu.
String $body Mesaj.
Array $from Gönderici e-posta ve isim bilgileri.
Array $replyTo Paylaşılanlar e-posta ve isim bilgileri.
Array $cc CC olarak eklenen e-posta ve isim bilgileri.
Array $bcc BCC olarak eklenen e-posta ve isim bilgileri.
String $date Yıl-ay-gün saat-dakika-saniye cinsinden tarih ve zaman bilgisi.
Array $attachments Ek bilgileri. Bu bölüm dosya adı ve içeriği bilgilerini tutar.

Kullanımlar

output(IMAP::mail(5)); # 5 numaralı e-posta adresi.

 

 

# Move (ZN >= 6.0.23)


İlgili e-posta adresini farklı bir klasöre taşımak için kullanılır.

Parametreler

String $mailId E-posta ID bilgisi.
String $folder = 'Spam' Klasör adı.
Return Bool

Kullanımlar

IMAP::move(5, 'Trash'); # 5 nolu e-postayı Trash/ klasörüne taşı.

 

 

# Delete (ZN >= 6.0.23)


İlgili e-posta adresini siler.

Parametreler

String $mailId E-posta ID bilgisi.
Return Bool

Kullanımlar

IMAP::delete(5); # 5 nolu e-postayı siler.

 

 

# ChangeStatus (ZN >= 6.0.23)


İlgili e-posta adresini etiketler.

Parametreler

String $mailId E-posta ID bilgisi.
String $status Etiket türü. Kullanılabilir Seçenekler: seen / read, unseen / unread, answered, flagged, deleted, draft
Return Bool

Kullanımlar

IMAP::changeStatus(5, 'unread'); # 5 nolu e-postayı okunmamış olarak işaretler.

 

 

# CreateFolder (ZN >= 6.0.23)


E-posta kutusunda klasör oluşturmak için kullanılır.

Parametreler

String $folder Klasör adı.
Return Bool

Kullanımlar

IMAP::createFolder('MyFolder');

 

 

# DeleteFolder (ZN >= 6.0.23)


E-posta kutusundan mail silmek için kullanılır.

Parametreler

String $folder Klasör adı.
Return Bool

Kullanımlar

IMAP::deleteFolder('MyFolder');

 

 

# RenameFolder (ZN >= 6.0.23)


E-posta kutusundan mail silmek için kullanılır.

Parametreler

String $name Klasör adı.
String $newName Klasörün yeni adı.
Return Bool

Kullanımlar

IMAP::renameFolder('MyFolder', 'MyFolder2');

 

 

# Error (ZN >= 6.0.23)


Herhangi bir hatanın oluşması durumunda hatayı çıktılar.

Parametreler

Void
Return String

Kullanımlar

output( IMAP::error() );