2009-09-20 18 views
8

Próbuję dodać przychodzącą wiadomość e-mail do mojej aplikacji internetowej. Jest zbudowany na CodeIgniter i PHP, i o ile mogę powiedzieć, nie znalazłem żadnych bibliotek CI, aby to zrobić.PHP: Pobierz przychodzącą wiadomość e-mail z protokołu POP3 lub IMAP, przeanalizuj ją i oznacz jako przeczytane/usuń na serwerze

Co chciałbym zrobić, to mieć kontroler, który łączy się z moją skrzynką pocztową, poprzez POP3 lub IMAP, i pobiera wiadomość, analizuje ją, a następnie usuwa ją z serwera.

Orurowanie poczty z postfiksu/etc nie będzie działało w mojej konfiguracji serwera.

Wszelkie sugestie będą niezmiernie pomocne.

Dzięki!

Odpowiedz

21

http://ca.php.net/imap

$mb = imap_open("{host:port/imap}","username", "password"); 

$messageCount = imap_num_msg($mb); 
for($MID = 1; $MID <= $messageCount; $MID++) 
{ 
    $EmailHeaders = imap_headerinfo($mb, $MID); 
    $Body = imap_fetchbody($mb, $MID, 1); 
    doSomething($EmailHeaders, $Body); 
} 
0

Dla bardziej niezależnego podejścia można zbudować Trzecią wtyczki imprezie z Zend Framework (https://docs.zendframework.com/zend-mail/read/). Użyłem ich modułów ACL w Codeigniter i jest to dobry sposób na uzyskanie najlepszych z obu frameworków.

Umożliwia to również analizowanie wiadomości e-mail i usuwanie załączników itp.