imap_getmailboxes
(PHP 4, PHP 5)
imap_getmailboxes — Read the list of mailboxes, returning detailed information on each one
Descrição
$imap_stream
, string $ref
, string $pattern
)Gets information on the mailboxes.
Parâmetros
-
imap_stream -
Um stream IMAP retornado por imap_open().
-
ref -
refshould normally be just the server specification as described in imap_open() -
pattern -
Especifica aonde na hierarquia da caixa de mensagens deve começar a procura.
Existem dois caracteres especiais que você pode passar como parte para o
pattern: '*' e '%'. '*' significa retornar todas as caixas de mensagens. Se você passarpatterncomo '*', você terá uma lista de toda a hierarquia da caixa de mensagens. '%' significa retornar o nível atual apenas. '%' como o parâmetropatternira retornar apenas as caixar de mensagem do nível superior; '~/mail/%' em UW_IMAPD irá retornar cada caixa de mensagem no diretório ~/mail, mais nenhuma em subpastas deste diretório.
Valor Retornado
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 eitherMARKEDorUNMARKEDis provided, you can assume the IMAP server supports this feature for this mailbox.
Exemplos
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);
?>