(PHP 4, PHP 5, PHP 7)
imap_getmailboxes — Read the list of mailboxes, returning detailed information on each one
$imap_stream
, string $ref
, string $pattern
)Gets information on the mailboxes.
imap_streamimap_open()이 반환한 IMAP 스트림입니다.
ref
ref should normally be just the server
specification as described in imap_open()
pattern검색을 시작할 우편함 계층을 지정합니다.
pattern 부분에 사용할 수 있는
두 개의 특수 문자가 존재합니다: '*'와
'%'. '*'는 모든
우편함을 반환합니다. pattern이
'*'라면, 전체 우편함 계층 목록을 얻습니다.
'%'은 현재 레벨을 의미합니다.
pattern 인수로 '%'을
사용하면, 최고 레벨 우편함들만 반환합니다; UW_IMAPD에
'~/mail/%'는 ~/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 />\n";
}
} else {
echo "imap_getmailboxes failed: " . imap_last_error() . "\n";
}
imap_close($mbox);
?>