PHP - imap_list() 函数



PHP−IMAP 函数帮助您访问电子邮件帐户,IMAP 代表 **I**nternet **M**ail **A**ccess **P**rotocol,使用这些函数,您还可以使用 NNTP、POP3 协议和本地邮箱访问方法。

**imap_list()** 函数接受一个表示 IMAP 流的资源值,两个表示服务器规范和邮箱层次结构的字符串值作为参数,并读取指定邮箱的列表。

语法

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

参数

序号 参数及描述
1

imap_stream (必填)

这是一个字符串值,表示 IMAP 流,是 **imap_open()** 函数的返回值。

2

ref (必填)

这是一个字符串值,表示服务器规范。

3

pattern (必填)

这是一个字符串值,表示邮箱层次结构搜索的起始位置。

返回值

如果成功,此函数返回一个包含邮箱名称的数组;如果失败,则返回布尔值 FALSE。

PHP 版本

此函数首次引入 PHP 版本 4,并在所有后续版本中均有效。

示例

以下示例演示了 **imap_list()** 函数的使用:

<html>
   <body>
      <?php
         //Establishing connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $pwd = "cohondob_123";
         $imap = imap_open($url, $id, $pwd);
         print("Connection established...."."<br>");
		 
         //list of mailboxes
         $res = imap_list($imap, $url, "*");
         print_r($res);		 

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

输出

这将生成以下输出:

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

示例

以下是此函数的另一个示例:

<html>
   <body>
      <?php
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $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_list($mailbox, $url, "*");
         foreach ($list as $key => $val) {
            print_r($val);
            print("<br>");
         }	 
      ?>
   </body>
</html>

输出

这将生成以下输出:

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
php_function_reference.htm
广告