# imap_status

(PHP 4, PHP 5, PHP 7)

imap_status — Returns status information on a mailbox

### 说明

imap_status ( resource `$imap_stream` , string `$mailbox` , int `$options` ) : object

Gets status information about the given `mailbox`.

### 参数

`imap_stream`

  由 imap_open() 返回的 IMAP 流。

`mailbox`

  The mailbox name, see imap_open() for more information

  Warning

  Passing untrusted data to this parameter is insecure, unless imap.enable_insecure_rsh is disabled.

`options`

  Valid flags are:

  - `SA_MESSAGES` - set $status->messages to the number of messages in the mailbox
  - `SA_RECENT` - set $status->recent to the number of recent messages in the mailbox
  - `SA_UNSEEN` - set $status->unseen to the number of unseen (new) messages in the mailbox
  - `SA_UIDNEXT` - set $status->uidnext to the next uid to be used in the mailbox
  - `SA_UIDVALIDITY` - set $status->uidvalidity to a constant that changes when uids for the mailbox may no longer be valid
  - `SA_ALL` - set all of the above

### 返回值

This function returns an object containing status information. The object has the following properties: messages, recent, unseen, uidnext, and uidvalidity.

flags is also set, which contains a bitmask which can be checked against any of the above constants.

### 范例

Example #1 imap_status() example

    <?php
    $mbox = imap_open("{imap.example.com}", "username", "password", OP_HALFOPEN)
          or die("can't connect: " . imap_last_error());

    $status = imap_status($mbox, "{imap.example.org}INBOX", SA_ALL);
    if ($status) {
      echo "Messages:   " . $status->messages    . "<br />\n";
      echo "Recent:     " . $status->recent      . "<br />\n";
      echo "Unseen:     " . $status->unseen      . "<br />\n";
      echo "UIDnext:    " . $status->uidnext     . "<br />\n";
      echo "UIDvalidity:" . $status->uidvalidity . "<br />\n";
    } else {
      echo "imap_status failed: " . imap_last_error() . "\n";
    }

    imap_close($mbox);
    ?>