Descargar emails con IMAP y PHP

24/Mar/2011 PHP , , , , , 4 Comentarios

En el artículo Descargar emails con POP3 y PHP ya vimos como acceder a nuestro email mediante POP3. Ahora vamos a ver qué pequeñas modificaciones hay que hacer para acceder a un servidor vía IMAP.

La principal modificación está en la definición del hostname que utilicemos al establecer la conexión con imap_open. Los servidores de correo suelen atender el protocolo IMAP por el puerto 143.

  1. $hostname = '{aulambra.com:143/imap/ssl}INBOX';
  2. $username = 'usuario@aulambra.com';
  3. $password = 'password';
  4.  
  5. $inbox = imap_open($hostname,$username,$password) or die('Ha fallado la conexión: ' . imap_last_error());

En este caso este servidor de email necesita de una conexión segura. Es por ello que utilizamos el flag /ssl.

El resto de pasos son iguales que con POP3. Hacemos el filtrado de mensajes mediante imap_search:

  1. $emails = imap_search($inbox,'ALL');

El siguiente paso será recorrerlos accediendo a su cabecera con imap_fetch_overview:

  1. foreach($emails as $email_number) {
  2. $overview = imap_fetch_overview($inbox,$email_number,0);
  3. $salida.= 'Tema: '.$overview[0]->subject;
  4. $salida.= 'De: '.$overview[0]->from;
  5. }

Y por último no se nos puede olvidar la conexión con imap_close:

  1. imap_close($inbox);

Lo mejor que puedes hacer es ver todo el código para descargar emails con IMAP y PHP y jugar con él.

4 comentarios en “Descargar emails con IMAP y PHP”

Víctor Cuervo

Carlos

TEngo problemas con la configuracion de imap, desde un srvicio de godaddy quiero acceder a otra cuenta de correo de un dominio diferente pero obtengo el error: Can’t connect to mail. no route to host, alguien puede dar algun comentario?

Víctor Cuervo

BRAYAN

me gustaría saber como puedo determinar si un mensaje que yo he enviado me ha sido respondido agradecería la ayuda y como obtengo el correo de la persona que lo envio y no el nombre como lo hace este codigo

Víctor Cuervo

Víctor Cuervo

A mí lo que se me ocurre para correlar los mensajes es que insertes un identificador en el subject del mensaje para que al volver en respuesta puedas analizarlo y obtener la correlación.

Saludos.

Víctor Cuervo

Ruben

quisiera jugar con el y ver sus bondades pero no puedo descargarlo
si pudieran ayudarme mi correo es r.payrumani@gmail.com

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

*