¿Cómo obtener datos de correo electrónico en bruto con la extensión imap?

Estoy buscando una forma de descargar todos los datos de correo electrónico sin procesar (incluido el archivo adjunto), similar a lo que obtienes al hacer clic en "Mostrar original" en Gmail.

Actualmente, puedo obtener el encabezado sin procesar y algunas partes del cuerpo del correo mediante este código:

<code>$this->MailBox = imap_open($mailServer, $userName, $password, OP_SILENT);
...
$email->RawEmail = imap_fetchbody($this->MailBox, $msgNo, "0");
$email->RawEmail .= "\n".imap_fetchbody($this->MailBox, $msgNo, "1");
</code>

También sé que cambiar el tercer parámetro de imap_fetchbody podría devolver el archivo adjunto codificado. Supongo que necesito un bucle aquí para obtener el correo electrónico sin procesar parte por parte, pero ¿cuál es la condición para detener el bucle?

¿Hay una manera fácil de obtener todo el correo electrónico a la vez?

Cualquier ayuda sería apreciada.

Respuestas a la pregunta(4)

Su respuesta a la pregunta