(PHP 4, PHP 5, PHP 7)
imap_status — Получить информацию по статусу почтового ящика
$imap_stream
, string $mailbox
, int $options
) : object
Возвращает информацию по статусу заданного ящика mailbox
.
imap_stream
Поток IMAP, полученный из imap_open().
mailbox
Имя почтового ящика, более подробно смотрите в описании imap_open()
Если imap.enable_insecure_rsh не отключен, то передача в этот параметр не проверенных данных не безопасна.
options
Допустимые опции:
SA_MESSAGES
- установить
$status->messages, равным количеству писем в ящике
SA_RECENT
- установить
$status->recent, равным количеству новых писем
SA_UNSEEN
- установить
$status->unseen, равным количеству непрочтенных писем
SA_UIDNEXT
- установить
$status->uidnext равным следующему uid, который будет
использован в ящике
SA_UIDVALIDITY
- установить
$status->uidvalidity в значение константы, которая меняется,
когда UID для почтового ящика больше не могут быть действительным
SA_ALL
- использовать все перечисленные опции
Функция возвращает объект, содержащий информацию по статусу. Объект имеет следующие свойства: messages, recent, unseen, uidnext и uidvalidity.
flags также установлен, он содержит битовую маску которая может быть проверена с помощью перечисленных выше констант.
Пример #1 Пример использования imap_status()
<?php
$mbox = imap_open("{imap.example.com}", "username", "password", OP_HALFOPEN)
or die("не удалось подключиться: " . imap_last_error());
$status = imap_status($mbox, "{imap.example.org}INBOX", SA_ALL);
if ($status) {
echo "Сообщения: " . $status->messages . "<br />\n";
echo "Последние: " . $status->recent . "<br />\n";
echo "Непросмотренные: " . $status->unseen . "<br />\n";
echo "UIDnext: " . $status->uidnext . "<br />\n";
echo "UIDvalidity:" . $status->uidvalidity . "<br />\n";
} else {
echo "imap_status failed: " . imap_last_error() . "\n";
}
imap_close($mbox);
?>