PHP - Fonction imap_fetchbody ()

Les fonctions PHP-IMAP vous aident à accéder aux comptes de messagerie, IMAP signifie IInternet Mail Aaccès Protocol en utilisant ces fonctions, vous pouvez également travailler avec les protocoles NNTP, POP3 et les méthodes d'accès aux boîtes aux lettres locales.

le imap_fetchbody() La fonction accepte une valeur de ressource représentant un flux IMAP, une valeur entière représentant un message dans la boîte aux lettres, une valeur de chaîne contenant le (s) numéro (s) de partie d'un message, en tant que paramètres et, récupère la section spécifiée du corps du message.

Syntaxe

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

Paramètres

Sr. Non Paramètre et description
1

imap_stream (Mandatory)

Il s'agit d'une valeur de chaîne représentant un flux IMAP, valeur de retour du imap_open() fonction.

2

msg (Mandatory)

Il s'agit d'une valeur entière représentant le numéro du message / e-mail, à marquer pour suppression.

3

section(Mandatory)

Il s'agit d'une valeur de chaîne représentant les numéros de message (séparés par ".").

4

options(Optional)

Il s'agit d'un paramètre facultatif qui peut être un ou plusieurs des éléments suivants -

  • FT_UID

  • FT_PEEK

  • FT_INTERNAL

  • FT_INTERNAL

Valeurs de retour

Cette fonction renvoie une valeur de chaîne représentant la section récupérée d'un mail / message.

Version PHP

Cette fonction a été introduite pour la première fois dans la version 4 de PHP et fonctionne dans toutes les versions ultérieures.

Exemple

L'exemple suivant montre l'utilisation du imap_fetchbody() fonction -

<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>

Production

Cela générera la sortie suivante -

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

Exemple

L'exemple suivant récupère les UID des messages dans le flux actuel -

<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>

Production

Cela générera la sortie suivante -

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

Exemple

Voici un autre exemple de cette fonction: nous avons établi une connexion à une boîte aux lettres particulière et récupéré le contenu du message.

<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>

Production

Ce programme génère la sortie suivante -

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