PHP Conference Nagoya 2025

imap_get_quota

(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)

imap_get_quotaПолучает настройку уровня квоты и статистику использования почтовых ящиков

Описание

imap_get_quota(IMAP\Connection $imap, string $quota_root): array|false

Возвращает настройку уровня квоты и статистику использования почтовых ящиков.

Версия данной функции для обычных пользователей, не администраторов, для которых в PHP существует функция imap_get_quotaroot().

Список параметров

imap

Экземпляр класса IMAP\Connection.

quota_root

quota_root должно соответствовать формату user.name, где name - имя ящика, информация по которому нужна.

Возвращаемые значения

Возвращает ассоциативный массив целых чисел с ключами "limit" и "usage". Число с ключом "limit" определяет максимальный допустимый размер ящика. Число с ключом "usage" определяет текущий уровень использования. В случае возникновения ошибки вернёт false.

Начиная с PHP 4.3 и выше, функция более точно соответствует стандарту, описанному в » RFC2087. Значение возвращаемого массива изменилось для поддержки неограниченного количества возвращаемых ресурсов (т.е. сообщений или подпапок), где каждый именованный ресурс будет представлен индивидуальным массивом. Каждый элемент массива будет содержать другой массив к ключами "limit" и "usage".

Для обеспечения обратной совместимости, оригинальный метод доступа всё ещё доступен, хотя предполагается это поправить.

Список изменений

Версия Описание
8.1.0 Параметр imap теперь ожидает экземпляр класса IMAP\Connection; раньше параметр ждал ресурс (resource) imap.

Примеры

Пример #1 Пример использования imap_get_quota()

<?php
$mbox
= imap_open("{imap.example.org}", "mailadmin", "password", OP_HALFOPEN)
or die(
"не удалось подключиться: " . imap_last_error());

$quota_value = imap_get_quota($mbox, "user.kalowsky");
if (
is_array($quota_value)) {
echo
"Уровень использования: " . $quota_value['usage'];
echo
"Размер ящика: " . $quota_value['limit'];
}

imap_close($mbox);
?>

Пример #2 Пример использования imap_get_quota() в PHP 4.3 и выше

<?php
$mbox
= imap_open("{imap.example.org}", "mailadmin", "password", OP_HALFOPEN)
or die(
"не удалось подключиться: " . imap_last_error());

$quota_values = imap_get_quota($mbox, "user.kalowsky");
if (
is_array($quota_values)) {
$storage = $quota_values['STORAGE'];
echo
"Уровень использования STORAGE: " . $storage['usage'];
echo
"Максимальный размер STORAGE: " . $storage['limit'];

$message = $quota_values['MESSAGE'];
echo
"Уровень использования MESSAGE: " . $message['usage'];
echo
"Максимальный размер MESSAGE: " . $message['limit'];

/* ... */
}

imap_close($mbox);
?>

Примечания

Эта функция доступна только при использовании библиотеки c-client2000 или новее.

Заданный поток imap должен быть открыт под административным пользователем.

Смотрите также

  • imap_open() - Открывает поток IMAP к почтовому ящику
  • imap_set_quota() - Устанавливает квоту для заданного почтового ящика
  • imap_get_quotaroot() - Получает настройки квоты для каждого пользователя

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top