PHP - Función imap_fetchbody ()

Las funciones PHP − IMAP le ayudan a acceder a las cuentas de correo electrónico, IMAP significa IInternet Mafligir Aacceso Protocol utilizando estas funciones también puede trabajar con protocolos NNTP, POP3 y métodos de acceso al buzón local.

los imap_fetchbody() La función acepta un valor de recurso que representa un flujo IMAP, un valor entero que representa un mensaje en el buzón, un valor de cadena que contiene los números de parte de un mensaje, como parámetros y recupera la sección especificada del cuerpo del mensaje.

Sintaxis

imap_fetchbody($imap_stream, $msg, $section [, $options]);

Parámetros

No Señor Descripción de parámetros
1

imap_stream (Mandatory)

Este es un valor de cadena que representa un flujo IMAP, valor de retorno del imap_open() función.

2

msg (Mandatory)

Este es un valor entero que representa el mensaje / número de correo, que se marcará para su eliminación.

3

section(Mandatory)

Este es un valor de cadena que representa los números de mensaje (separados por ".").

4

options(Optional)

Este es un parámetro opcional que puede ser uno o más de los siguientes:

  • FT_UID

  • FT_PEEK

  • FT_INTERNAL

  • FT_INTERNAL

Valores devueltos

Esta función devuelve un valor de cadena que representa la sección recuperada de un correo / mensaje.

Versión PHP

Esta función se introdujo por primera vez en PHP versión 4 y funciona en todas las versiones posteriores.

Ejemplo

El siguiente ejemplo demuestra el uso de imap_fetchbody() función -

<html>
   <body>
      <?php
         //Establishing connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $pwd = "cohondob_123";
         $imap = imap_open($url, $id, $pwd);
         print("Connection established...."."<br>");
		 
         //Fetching the contents of a message
         print("Contents of the first message: "."<br>");
         $body = imap_fetchbody($imap, 1, 1);
         print_r($body);
    
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
Contents of the first message:
#sample_mail1

Ejemplo

El siguiente ejemplo recupera los UID de los mensajes en la secuencia actual:

<html>
   <body>
      <?php
         //Establishing connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $pwd = "cohondob_123";
         $imap = imap_open($url, $id, $pwd);
         print("Connection established...."."<br>");
		 
         //Fetching the contents of a message
         print("Contents of the first message: "."<br>");
         $body = imap_fetchbody($imap, imap_uid($imap, 1), 1, FT_UID);
         print_r($body);
    
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
Contents of the first message:
#sample_mail1

Ejemplo

A continuación se muestra otro ejemplo de esta función, ya que hemos establecido conexión con un buzón de correo en particular y hemos recuperado el contenido del mensaje en él.

<html>
   <body>
      <?php
         //Establishing connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $pwd = "cohondob_123";
         $imap = imap_open($url, $id, $pwd);
         print("Connection established...."."<br>");
         
         //Searching emails
         $emailData = imap_search($imap, '');
        
         if (! empty($emailData)) {  
            foreach ($emailData as $msg) {
               $msg = imap_fetchbody($imap, $msg, "1");
               print(quoted_printable_decode($msg)."<br>");                
            }    
         } 
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Salida

Este programa genera la siguiente salida:

Connection established....
#sample_mail1
#sample_mail2
#sample_mail3
#sample_mail4
#sample_mail5
#sample_mail6