Descargar emails de GMail con PHP

25/Mar/2011 PHP , , , , , , , 5 Comentarios

Una aplicación práctica para descargarte emails con IMAP y PHP es decargarnos los correos de GMail.

Lo primero que tenemos que hacer es confirmar que tenemos activado el acceso por IMAP en nuestra cuenta de GMail. Para ello tenemos que ir a:

Mail Settings » Forwarding and POP/IMAP » IMAP Access

Seleccionamos la opción Enable IMAP y guardamos los cambios.

Lo segundo que tenemos que saber es que al servidor de IMAP de GMail se accede mediante la siguiente configuración:

$hostname = '{imap.gmail.com:993/imap/ssl}INBOX';
$username = '[email protected]';
$password = 'password';

Hay que tener cuidado ya que se utiliza el puerto 993 para acceder por IMAP.

Los siguientes pasos son los mismos que explicamos en cómo descargarte emails con IMAP y PHP o en cómo decargarte emails con POP3 y PHP. Pero dejemos el código impreso:

$emails = imap_search($inbox,'ALL');
if($emails) {
  $salida = '';
  foreach($emails as $email_number) {    
    $overview = imap_fetch_overview($inbox,$email_number,0);
    $salida.= 'Tema: '.$overview[0]->subject;
    $salida.= 'De: '.$overview[0]->from;	   
  }  
  echo $salida;
} 
imap_close($inbox);

5 comentarios en “Descargar emails de GMail con PHP”

Víctor Cuervo

omar

como puedo reconocer cuando un correo rebota?

Víctor Cuervo

jeje

Como puedo mostrar el cuerpo del mensaje????????????????/

Víctor Cuervo

Víctor Cuervo

Buenas,

En este caso utilizamos imap_fetch_overview que solo nos da información general. Por lo tanto no hay acceso al cuerpo del mensaje. Para eso tienes que utilizar imap_fetchbody.

Saludos.

Víctor Cuervo

vero

Victor puedes hacer el codigo completo para bajar cabecera cuerpo, cabecera cuerpo de cada correo?

Víctor Cuervo

Víctor Cuervo

Buenas Vero,

Es sencillo, simplemente tienes que utilizar las funciones imap_fetchheader e imap_fetchbody. Las tienes documentadas en https://www.php.net/manual/es/ref.imap.php.

Espero que esto te ayude.

Saludos.

¿Algo que nos quieras comentar?

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

*