PHP: Télécharger le courrier électronique entrant de POP3 ou IMAP, l'analyser et le marquer comme lu / supprimer sur le serveur

StackOverflow https://stackoverflow.com/questions/1450490

Question

Je suis en train d'ajouter le courrier électronique entrant dans mon application web. Il est construit sur CodeIgniter et PHP, et pour autant que je peux dire que je n'ai pas trouvé de bibliothèques de CI pour le faire.

Ce que je voudrais faire est d'avoir un contrôleur qui se connecte à ma boîte mail, via POP3 ou IMAP, et récupère le message, parse il supprime ensuite du serveur.

mail de tuyauterie de postfix / etc ne va pas travailler sur ma configuration du serveur.

Toute suggestion serait extrêmement utile.

Merci!

Était-ce utile?

La solution

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 );
}

Autres conseils

Pour une approche plus indépendante que vous pourriez construire un plugin tiers avec Zend Framework ( https: //docs.zendframework.com/zend-mail/read/ ). Je l'ai utilisé leurs modules ACL au sein Codeigniter et est un bon moyen d'obtenir le meilleur des deux cadres.

Cela vous permet également d'analyser les e-mails et pièces jointes, etc extraire.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top