• PHP Video Tutorials

PHP - imap_lsub() 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_lsub() function accepts a resource value representing an IMAP stream, two string values representing the server specification and mailbox hierarchy as parameters and, retrieves the list of all the subscribed mailboxes.

Syntax

imap_lsub($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 which contains all 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_listsubscribed() 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_lsub($imap, $url, "*" );	
         print_r($list);		 

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

Output

This will generate the following output −

Connection established....
Array ( [0] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX [1] )

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.mail_box1";
         $newmailbox2 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.mail_box2";
         $newmailbox3 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.mail_box3";
         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_lsub($imap, $url, "*" );		 
         foreach($list as $ele){
            print($ele."<br>");
         }
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Output

This generates the following output −

Connection established....
Mailboxes Created . . . .
Subscribed to the created mailboxes . . . .
List of subscribed mailboxes . . . .
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.mail_box1
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.mail_box2
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.mail_box3
php_function_reference.htm
Advertisements