PHP - Función imap_headerinfo ()

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

los imap_headerinfo() La función acepta un valor de recurso que representa un flujo IMAP, un valor entero que representa un mensaje en particular como parámetros y lee el encabezado del mensaje especificado.

Sintaxis

imap_headerinfo($imap_stream ,$msg [,fromlength, $subjectlength, $defaulthost]);

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 número de mensaje / correo.

3

fromlength (Optional)

Este es un valor entero que representa la longitud de la propiedad fetchfrom.

4

subjectlength (Optional)

Este es un valor entero que representa la longitud de la propiedad fetchsubject.

Valores devueltos

Esta función devuelve un objeto que representa los encabezados del mensaje especificado en caso de éxito y un valor booleano que es FALSO en caso de error.

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_headerinfo() 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 headers of all messages		 
         print("Headers of all messages: "."<br>");
         $res = imap_headerinfo($imap, 2);	
         print_r($res);		     
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
Headers of all messages:
stdClass Object ( [date] => Thu, 22 Oct 2020 20:10:52 +0530 [Date] => Thu, 
22 Oct 2020 20:10:52 +0530 [message_id] => [toaddress] => 
[email protected] [to] => Array ( [0] => stdClass Object ( 
[mailbox] => tutorialspoint.test [host] => gmail.com ) ) [fromaddress] =>
Sender [from] => Array ( [0] => stdClass Object ( [personal] => Sender 
[mailbox] => sample.test[host] => gmail.com ) ) [reply_toaddress] => 
Sender [reply_to] => Array ( [0] => stdClass Object ( [personal] => 
Sender [mailbox] => sample.test[host] => gmail.com ) ) [senderaddress] =>
Sender [sender] => Array ( [0] => stdClass Object ( [personal] => Sender 
[mailbox] => sample.test[host] => gmail.com ) ) [Recent] => [Unseen] =
> U [Flagged] => [Answered] => [Deleted] => [Draft] => [Msgno] =
> 2 [MailDate] => 22-Oct-2020 14:41:31 +0000 [Size] => 4858 [udate] =>
1603377691 )

Ejemplo

A continuación se muestra otro ejemplo de la función anterior:

<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 headers of all messages		 
         print("Headers of all messages: "."<br>");
            
         for($i=1; $i<=imap_num_msg($imap); $i++) {
         $res = imap_headerinfo($imap, $i);
            print($res->toaddress);
            print("<br>");
            print($res->fromaddress);
            print("<br>");
            print($res->date);
            print("<br>");
            print($res->Size);	
            print("<br>");	
            print("<br>");		  
         }
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
Headers of all messages:
[email protected]
Sender
Thu, 22 Oct 2020 20:10:17 +0530
4857

[email protected]
Sender
Thu, 22 Oct 2020 20:10:52 +0530
4858

[email protected]
Sender
Sun, 25 Oct 2020 16:11:22 +0530
4880

[email protected]
Sender
Sun, 25 Oct 2020 17:22:41 +0530
4882

[email protected]
Sender
Sun, 25 Oct 2020 17:23:10 +0530
4884

[email protected]
Sender
Sun, 25 Oct 2020 17:24:25 +0530
4883

[email protected]
Sender
Mon, 26 Oct 2020 12:31:14 +0530
4888