(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
вернёт почтовые ящики
только верхнего уровня; с серверов UW_IMAPD
значение '~/mail/%
'
вернёт почтовые ящики каталога ~/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);
?>