array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.imap-getmailboxes.php', 1 => 'imap_getmailboxes', ), 'up' => array ( 0 => 'ref.imap.php', 1 => 'Функции IMAP', ), 'prev' => array ( 0 => 'function.imap-getacl.php', 1 => 'imap_getacl', ), 'next' => array ( 0 => 'function.imap-getsubscribed.php', 1 => 'imap_getsubscribed', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/imap/functions/imap-getmailboxes.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
imap_getmailboxes — Читает список почтовых ящиков, возвращая подробную информацию по каждому из них
Получает информацию о почтовых ящиков.
imap
Экземпляр класса IMAP\Connection.
reference
reference
обычно должен быть только спецификацией сервера, как описано в imap_open()
Если imap.enable_insecure_rsh не отключён, то передача в этот параметр не проверенных данных не безопасна.
pattern
Определяет начало поиска в иерархии почтовых ящиков.
Есть два специальных символа, которые можно использовать при передаче
как часть pattern
:
'*
' и '%
'.
'*
' возвращает все почтовые ящики. Если вы передадите
pattern
как '*
', то получите полный список иерархии почтовых ящиков.
'%
' вернёт только текущий уровень.
'%
', переданный как параметр pattern
, вернёт почтовые ящики
только на самом верхнем уровне; '~/mail/%
'
на UW_IMAPD
вернёт все ящики в директории ~/mail, кроме тех, которые
находятся в её поддиректориях.
Возвращает массив объектов, содержащих информацию о ящиках.
Каждый объект имеет свойства: name
, содержащее
полное имя ящика; delimiter
,
содержащее разделитель для той части иерархии, в которой
содержится ящик; и attributes
.
Параметр Attributes
является битовой маской,
следующих допустимых констант:
LATT_NOINFERIORS
- этот ящик не имеет и не может иметь
потомков (содержать вложенные ящики). Вызов функции
imap_createmailbox() не будет работать для этого ящика.
LATT_NOSELECT
- это только контейнер, а не почтовый ящик.
Вы не можете его открыть.
LATT_MARKED
- Этот ящик помечен. Означает, что в нем могут
быть новые письма, появившиеся с момента последней проверки. Работает не со всеми
серверами IMAP.
LATT_UNMARKED
- Этот ящик не помечен, т.е. в нем нет
новых писем. Если один из флагов MARKED
или
UNMARKED
выставлен - можете считать, что сервер поддерживает
этот функционал.
LATT_REFERRAL
- Этот контейнер имеет направления (referral) на удалённый почтовый ящик.
LATT_HASCHILDREN
- Этот почтовый ящик имеет выбираемые подчинённые (inferiors).
LATT_HASNOCHILDREN
- Этот почтовый ящик не имеет выбираемые подчинённые (inferiors).
false
в случае возникновения ошибки.
Версия | Описание |
---|---|
8.1.0 |
Параметр imap теперь ожидает экземпляр класса IMAP\Connection;
раньше параметр ждал ресурс (resource) imap .
|
Пример #1 Пример использования imap_getmailboxes()
<?php
$mbox = imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
or die("не удалось подключиться: " . 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 завершился с ошибкой: " . imap_last_error() . "\n";
}
imap_close($mbox);
?>