PHP - imap_getsubscribed() 函数



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

imap_getsubscribed() 函数接受一个表示 IMAP 流的资源值,两个分别表示服务器规范和邮箱层次结构的字符串值作为参数,并读取/检索有关所有已订阅邮箱的信息。

语法

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

参数

序号 参数和描述
1

imap_stream (必填)

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

2

ref (必填)

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

3

pattern (必填)

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

返回值

此函数返回一个对象数组,其中每个对象都保存有关已订阅邮箱的信息。

PHP 版本

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

示例

以下示例演示了 imap_getsubscribed() 函数的使用 −

<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>");
		 
         //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>

输出

这将生成以下输出 −

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] => / 
   ) 
)

示例

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

<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>");
		 
         //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>

输出

这将生成以下输出 −

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
广告