In questo articolo sulla gestione della posta elettronica tramite PHP e le funzioni IMAP, descriveremo come visualizzare il contenuto della nostra mailbox stampando a video il subject dei messaggi, la data di invio di ciascuno di essi, il nome del mittente e naturalmente il messaggio contenuto.
Proponiamo di seguito il listato del nostro script d'esempio:
<?php $username = "tuauser"; $password = "tuapass"; $server = "pop.tuopop.it"; $conn = imap_open("{".$server.":110/pop3}INBOX",$username, $password); $n_messaggi = imap_num_msg($conn); $messaggi = imap_fetch_overview($conn,"1:$n_messaggi"); while(list($key,$value) = each($messaggi)) { if ($value->seen == 0) { echo "<p>Oggetto: ".$value->subject."<br />"; echo "Data: ".$value->date."<br />"; echo "Inviato da: ".$value->from."</p>"; echo nl2br(imap_fetchbody($conn,1,"1", "FT_PEEK")); } } ?>Da cui avremo un output simile al seguente:
Oggetto: tutto bene? Data: Wed, 25 Oct 2006 11:50:33 +0200 Inviato da: Marco blah, blah, blah... Oggetto: appuntamento Data: Wed, 25 Oct 2006 11:50:43 +0200 Inviato da: Lory blah, blah, blah... Oggetto: notifica Data: Wed, 25 Oct 2006 11:51:28 +0200 Inviato da: Server blah, blah, blah...La funzione imap_num_msg() restituisce il numero dei messaggi contenuti all'interno della mailbox e accetta come parametro l'apertura della connessione al server di posta.