• PHP Video Tutorials

PHP - imap_mail_copy() 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_mail_copy() function accepts a resource value representing an IMAP stream, two string values representing the range of messages and mailbox name/url as parameters and copies the specified messages to the given mailbox.

Syntax

imap_mail_copy ($imap_stream, $msglist , $mailbox [,$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

$msglist (Mandatory)

This is a string value representing the range of the messages.

3

mailbox(Mandatory)

This is a string value representing the name/URL of the mailbox. It contains the server name, mailbox path.

4

Options (Optional)

This is an integer value representing optional parameters which will be one or more of the following −

  • FT_UID

  • CP_MOVE

Return Values

This function returns a Boolean value which is TRUE in case of success and FALSE in case of a failure.

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_mail_copy() 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>");
		 
         //Copying the messages		 
         $msg_list = ["test_string1", "test_string2", "test_string3"];
         //$body = imap_mail_copy($imap, $msg_list, $url);
		 
         $testmailbox = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.de";
         $res = imap_createmailbox($imap, imap_utf7_encode($testmailbox));
            
         $res = imap_mail_copy($imap, "1", $testmailbox); 
         If($res){
             print("Mail copied successfully");
         }else{
             print("Error Occurred");
         }   
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Output

This will generate the following output −

Connection established....
Mail copied successfully 

Example

Following is an example of the above function with optional parameters −

<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>");		 
		 
         $mbox = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.emp";
         imap_createmailbox($imap, imap_utf7_encode($mbox));
         imap_mail_copy($imap, "1", $mbox, CP_MOVE); 
 
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Output

This will generate the following output −

Connection established....
php_function_reference.htm
Advertisements