PHP - Funzione imap_rfc822_parse_headers ()

Le funzioni PHP − IMAP ti aiutano ad accedere agli account di posta elettronica, IMAP sta per Internet Mail Access Protocol utilizzando queste funzioni puoi anche lavorare con i protocolli NNTP, POP3 e metodi di accesso alla casella di posta locale.

Il imap_rfc822_parse_headers() la funzione accetta due valori di stringa che rappresentano l'indirizzo e il nome host predefinito come parametri e analizza e restituisce le intestazioni delle e-mail dalla stringa data.

Sintassi

imap_rfc822_parse_headers($address [, $default_host]);

Parametri

Suor n Parametro e descrizione
1

address (Mandatory)

Questo è un valore stringa che rappresenta gli indirizzi.

2

default_host (Optional)

Questo è un valore stringa che rappresenta il nome host predefinito.

Valori restituiti

Questa funzione restituisce un oggetto contenente l'intestazione.

Versione PHP

Questa funzione è stata introdotta per la prima volta nella versione 4 di PHP e funziona in tutte le versioni successive.

Esempio

L'esempio seguente mostra l'utilizzo della funzione imap_rfc822_parse_headers () -

<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>");
		  
         //Parsing a mail address	 
         print("Parsing mail address: "."<br>");
         $header = imap_fetchheader($imap, 1);
         $res = imap_rfc822_parse_headers($header);
         print_r($res);
    
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Produzione

Questo genererà il seguente output:

Connection established....
Parsing mail address:
stdClass Object ( 
   [date] => Thu, 22 Oct 2020 20:10:17 +0530 
   [Date] => Thu, 22 Oct 2020 20:10:17 +0530 
   [subject] => [Subject] => [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 
      ) 
   ) 
)

Esempio

Di seguito è riportato un esempio della funzione precedente con parametri opzionali:

<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>");
		  
         //Parsing a mail address	 
         print("Parsing mail address: "."<br>");
         $header = imap_fetchheader($imap, 1);
         $res = imap_rfc822_parse_headers($header, "default_header");
         print_r($res);
    
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Produzione

Questo genererà il seguente output:

Connection established....
Parsing mail address:
stdClass Object ( [date] => Thu, 22 Oct 2020 20:10:17 +0530 [Date] => Thu, 
22 Oct 2020 20:10:17 +0530 [subject] => [Subject] => [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 ) ) )