• PHP Video Tutorials

PHP - imap_getsubscribed() 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_getsubscribed() function accepts a resource value representing an IMAP stream, two string values representing the server specification and mailbox hierarchy as parameters and, reads/retrieves information about all the subscribed mailboxes.

Syntax

imap_getsubscribed($imap_stream, $ref, $pattern);

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

ref (Mandatory)

This is a string value representing the server specification.

3

pattern (Mandatory)

This is a string value representing the start of the mailbox hierarchy search.

Return Values

This function returns an array of objects where each object holds information about the subscribed mailboxes.

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_getsubscribed() 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>");
		 
         //Subscribing to the mailbox
         $res = imap_subscribe($imap, $url);
		 
         //Retrieving the list of subscribed mailboxes
         $list = imap_getsubscribed($imap, $url, "*" );	
         print_r($list);		 

         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Output

This will generate the following output −

Connection established....
Array ( 
   [0] => stdClass Object ( 
      [name] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX 
      [attributes] => 64 [delimiter] => / 
   ) 
   [1] => stdClass Object ( 
      [name] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.mail_box1 
      [attributes] => 64 [delimiter] => / 
   ) 
   [2] => stdClass Object ( 
      [name] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.mail_box2 
      [attributes] => 64 [delimiter] => / 
   ) 
   [3] => stdClass Object (
      [name] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.mbox_1 
      [attributes] => 64 [delimiter] => / 
   ) 
   [4] => stdClass Object ( 
      [name] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.mbox_2 
      [attributes] => 64 [delimiter] => / 
   ) 
)

Example

Following is another example of this 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>");
		 
         //Creating a mailbox
         $newmailbox1 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail1";
         $newmailbox2 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail2";
         $newmailbox3 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail3";
         imap_createmailbox($imap, imap_utf7_encode($newmailbox1));
         imap_createmailbox($imap, imap_utf7_encode($newmailbox2));
         imap_createmailbox($imap, imap_utf7_encode($newmailbox3));
         print("Mailboxes Created . . . . "."<br>");
		 		 
         //Subscribing to the mailbox
         $res = imap_subscribe($imap, $newmailbox1);
         $res = imap_subscribe($imap, $newmailbox2);
         $res = imap_subscribe($imap, $newmailbox3);
         print("Subscribed to the created mailboxes . . . . "."<br>");
		   
         //List of subscribed mailboxes
         print("List of subscribed mailboxes . . . . "."<br>");
         $list = imap_getsubscribed($imap, $url, "*" );		 
         print_r($list);
	  
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Output

This will generate the following output −

Connection established....
Mailboxes Created . . . .
Subscribed to the created mailboxes . . . .
List of subscribed mailboxes . . . .
Array ( 
   [0] => stdClass Object (
      [name] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX 
      [attributes] => 64 [delimiter] => / 
   ) 
   [1] => stdClass Object (
      [name] => [delimiter] => / 
   ) 
   [9] => stdClass Object ( 
      [name] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail1 
      [attributes] => 64 [delimiter] => / 
   ) 
   [10] => stdClass Object (
      [name] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail2 
      [attributes] => 64 [delimiter] => / 
   ) 
   [11] => stdClass Object (
      [name] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail3 
      [attributes] => 64 [delimiter] => / 
   ) 
)
php_function_reference.htm
Advertisements