• PHP Video Tutorials

PHP - imap_fetchbody() Function



PHP−IMAP functions helps you to access email accounts, IMAP stands for Internet Mail Access Protocol using these functions you can also work with NNTP, POP3 protocols and local mailbox access methods.

The imap_fetchbody() function accepts a resource value representing an IMAP stream, an integer value representing a message in the mailbox, a string value containing the part number(s) of a message, as parameters and, retrieves the specified section of the message body.

Syntax

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

Parameters

Sr.No Parameter & Description
1

imap_stream (Mandatory)

This is a string value representing an IMAP stream, return value of the imap_open() function.

2

msg (Mandatory)

This is an integer value representing the message/mail number, that is to marked for deletion.

3

section(Mandatory)

This is a string value representing the message numbers (separated by ".").

4

options(Optional)

This is an optional parameter which can be one or more of the following −

  • FT_UID

  • FT_PEEK

  • FT_INTERNAL

  • FT_INTERNAL

Return Values

This function returns a string value representing the retrieved section of a mail/message.

PHP Version

This function was first introduced in PHP Version 4 and works in all the later versions.

Example

Following example demonstrates the usage of the imap_fetchbody() function −

<html>
   <body>
      <?php
         //Establishing connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "tutorialspoint.test@gmail.com";
         $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>

Output

This will generate the following output −

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

Example

Following example fetches the UID’s of the messages in the current stream −

<html>
   <body>
      <?php
         //Establishing connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "tutorialspoint.test@gmail.com";
         $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>

Output

This will generate the following output −

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

Example

Following is another example of this function in this we have established connection to a particular mail box and retrieved the contents of the message in it.

<html>
   <body>
      <?php
         //Establishing connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "tutorialspoint.test@gmail.com";
         $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>

Output

This program generates the following output −

Connection established....
#sample_mail1
#sample_mail2
#sample_mail3
#sample_mail4
#sample_mail5
#sample_mail6
php_function_reference.htm
Advertisements