ccc

IMAP: Leer todos los correos de un webmail (que no sea gmail)

if (!function_exists('imap_open')) {
echo "IMAP is not configured.";
exit();
}

$hostname = '{mail.eldespotricadorcinefilo.com/notls}INBOX';
$username = 'contactar@eldespotricadorcinefilo.com';
$password = 'xxx';

$inbox = imap_open($hostname,$username,$password) or die('Ha fallado la conexión: ' . imap_last_error());
$emails = imap_search($inbox,'ALL');
if($emails) {
  foreach($emails as $email) {
print_r($email);
$cabecera = imap_fetch_overview($inbox,$email,0);
$cuerpo = imap_body($inbox, $email);
print_r($cabecera);
print_r($cuerpo);
echo "<hr>";
  }
}
imap_close($inbox);

Para ver todas las funciones que tiene imap:
http://www.goibela.com/programacion/php/funciones/Funcion_42

Para hacer lo mismo con cuentas de gmail:
http://programando-php.blogspot.com/2019/05/api-gmail-obtener-los-correos-de-gmail.html

Si queremos que nos liste los ficheros adjunto (o nos lo descomprima en la carpeta temp_zip como en gmail) el código sería:
if (!function_exists('imap_open')) {
echo "IMAP is not configured.";
exit();
}

$hostname = '{mail.eldespotricadorcinefilo.com/notls}INBOX';
$username = 'contactar@eldespotricadorcinefilo.com';
$password = 'xxxx';

$inbox = imap_open($hostname,$username,$password) or die('Ha fallado la conexión: ' . imap_last_error());
$emails = imap_search($inbox,'ALL');
if($emails) {
  foreach($emails as $email) {
print_r($email);
$cabecera = imap_fetch_overview($inbox,$email,0);
$cuerpo = imap_body($inbox, $email);
$structure = imap_fetchstructure($inbox, $email);
// print_r($structure);

$connection = $inbox;
$emailIdent = $email;
require("getAdjuntos.php");
print_r($cabecera);
print_r($cuerpo);
echo "<hr>";
  }
}
imap_close($inbox);

No hay comentarios:

Publicar un comentario