PHP - imap_reopen() 函数



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

**imap_reopen()** 函数接受一个表示 IMAP 流的资源值,一个表示邮箱 URL/名称的字符串值作为参数,并将给定的流重新打开到一个新的邮箱。

语法

imap_reopen($mailbox, $mailbox [$options, $n_retries);

参数

序号 参数 & 描述
1

imap_stream (必填)

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

2

mailbox(必填)

这是一个字符串值,表示邮箱的名称/URL。它包含服务器名称、邮箱路径。

3

options (可选)

这是一个整数值,表示可选参数,可以是以下一个或多个:

  • OP_READONLY

  • OP_ANONYMOUS

  • OP_HALFOPEN

  • CL_EXPUNGE

  • OP_DEBUG

4

retries (可选)

这是一个整数值,表示最大尝试次数。

返回值

此函数返回一个布尔值,成功时为 TRUE,失败时为 FALSE。

PHP 版本

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

示例

以下示例演示了 **imap_reopen()** 函数的使用。

<html>
   <body>
      <?php
	      //Establishing connection
         $mailbox = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $pwd = "cohondob_123";
         $stream = imap_open($mailbox, $id, $pwd);
         //Reopening a mailbox
         $res = imap_reopen($stream, $mailbox);
         
         if($res){
            print("Connection established....");
         }else{
            print("Connection failed");
         }
      ?>
   </body>
</html>

输出

这将生成以下输出:

Connection established....

示例

以下是上述函数使用可选参数的示例。

<html>
   <body>
      <?php
         //Establishing the connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $pwd = "cohondob_123";
         $stream = imap_open($url, $id, $pwd);		 

         //Optional parameters
         $options = OP_READONLY;
         $retries = 10;		 
         $res = imap_reopen($stream, $url, $options, $retries);
       
         if($res){
            print("Connection established....");
         } else {
            print("Connection failed");
         }
      ?>
   </body>
</html>

输出

这将生成以下输出:

Connection established....

示例

<html>
   <body>
      <?php
         //Establishing the connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $pwd = "cohondob_123";
         $stream = imap_open($url, $id, $pwd);		 
		 		 
         $submbox = imap_listmailbox($stream, $url, "*");
         if (!$submbox) {
            print("Issue occurred");
            print("<br>");
         } else {
            foreach ($submbox as $name) {
               print($name . PHP_EOL);
               print("<br>");

            }
         }   
         $test = imap_reopen($stream, $url);
         if ($test == false) {
            print("Mailbox re-openeed successfully");
            print("<br>");
         }
      ?>
   </body>
</html>

输出

这将产生以下输出:

{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX
php_function_reference.htm
广告