imap_getmailboxes
(PHP 4, PHP 5)
imap_getmailboxes — Read the list of mailboxes, returning detailed information on each one
说明
array imap_getmailboxes ( resource $imap_stream , string $ref , string $pattern )Gets information on the mailboxes.
参数
- imap_stream
-
由 imap_open() 返回的 IMAP 流。
- ref
-
ref should normally be just the server specification as described in imap_open()
- pattern
-
指定在邮箱层级的何处开始查找。
在组成 pattern 的字符中可使用两个特殊字符: '*' 和 '%'。 '*' 是指返回所有邮箱目录. 如果将'*'作为 pattern 参数时, 则会返回整个邮箱层级结构。 '%' 是指只返回当前级次。 '%' 作为 pattern 参数则只会返回顶层邮箱; '~/mail/%' 用于 UW_IMAPD 则会返回名为 ~/mail 的目录, 但不包含其子目录。
返回值
Returns an array of objects containing mailbox information. Each object has the attributes name, specifying the full name of the mailbox; delimiter, which is the hierarchy delimiter for the part of the hierarchy this mailbox is in; and attributes. Attributes is a bitmask that can be tested against:
-
LATT_NOINFERIORS - This mailbox contains, and may not contain any "children" (there are no mailboxes below this one). Calling imap_createmailbox() will not work on this mailbox.
-
LATT_NOSELECT - This is only a container, not a mailbox - you cannot open it.
-
LATT_MARKED - This mailbox is marked. This means that it may contain new messages since the last time it was checked. Not provided by all IMAP servers.
-
LATT_UNMARKED - This mailbox is not marked, does not contain new messages. If either MARKED or UNMARKED is provided, you can assume the IMAP server supports this feature for this mailbox.
范例
Example #1 imap_getmailboxes() example
<?php
$mbox = imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
or die("can't connect: " . imap_last_error());
$list = imap_getmailboxes($mbox, "{imap.example.org}", "*");
if (is_array($list)) {
foreach ($list as $key => $val) {
echo "($key) ";
echo imap_utf7_decode($val->name) . ",";
echo "'" . $val->delimiter . "',";
echo $val->attributes . "<br />
";
}
} else {
echo "imap_getmailboxes failed: " . imap_last_error() . "
";
}
imap_close($mbox);
?>
参见
- imap_getsubscribed() - List all the subscribed mailboxes