PHP - imap_listmailbox() 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_listmailbox() function is an alias of imap_list() it accepts a resource value representing an IMAP stream, two string values representing the server specification and mailbox hierarchy as parameters and, reads the list of specified mailboxes.
Syntax
imap_listmailbox($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 the names of mailboxes in case of success, and returns a Boolean value FALSE in case of 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_listmailbox() 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>");
//list of mailboxes
$res = imap_listmailbox($imap, $url, "*");
print_r($res);
//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
$url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
$id = "tutorialspoint.test@gmail.com";
$pwd = "cohondob_123";
$mailbox = imap_open($url, $id, $pwd);
print("Connection established....");
print("<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";
$res = imap_createmailbox($mailbox, imap_utf7_encode($newmailbox1));
$res = imap_createmailbox($mailbox, imap_utf7_encode($newmailbox2));
//Retrieving the contents of mail boxes
$list = imap_listmailbox($mailbox, $url, "*");
foreach ($list as $key => $val) {
print_r($val);
print("<br>");
}
?>
</body>
</html>
Output
This will generate the following output −
Connection established....
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail1
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail2