(PHP 4 >= 4.0.5, PHP 5, PHP 7)
imap_get_quota — Liefert Quota-Beschränkungen und Nutzungsstatistik der Postfächer
$imap_stream
, string $quota_root
) : arrayimap_get_quota() ermittelt die aktuellen Quota- Beschränkunten und tatsächlich genutzten Resourcen für Postfächer.
Für die Ausführung dieser Funktion ist ein IMAP-Benutzer mit Administrationsrechten erforderlich, eine nichtadministrative Variante der Funktion ist imap_get_quotaroot().
imap_stream
Eine von imap_open() zurückgegebene IMAP-Verbindung.
quota_root
quota_root
sollte normalerweise in der
Form user.name angegeben werden.
name ist dabei der Name des Postfachs, für
das Informationen geliefert werden sollen.
Liefert ein Array mit zwei Integer-Elementen limit
und usage, die den insgesamt verfügbaren und den
zur Zeit vom Postfach genutzten Speicherplatz angeben. Im Fehlerfall
wird FALSE
zurückgegeben.
Ab PHP 4.3 hält sich die Funktion genauer an die Vorgaben aus » RFC2087. Das Ergebnisarray unterstützt nun eine unbegrenzte Anzahl von Ressourcewerten (z.B. Anzahl der Nachrichten oder Unterordner). Für jede Ressource wird ein Arrayelement mit dem Namen der Ressource als Key angelegt, die einzelnen Arrayelemente sind wiederum Arrays mit limit- und useage-Angaben.
Aus Gründen der Rückwärtskompatibilität werden außerdem weiter die beiden ursprünglichen Arrayelemente limit und usage zurückgegeben, ihre weitere Nutzung wird allerdings nicht empfohlen.
Beispiel #1 imap_get_quota()-Beispiel
<?php
$mbox = imap_open("{imap.example.org}", "mailadmin", "password", OP_HALFOPEN)
or die("can't connect: " . imap_last_error());
$quota_value = imap_get_quota($mbox, "user.kalowsky");
if (is_array($quota_value)) {
echo "Usage level is: " . $quota_value['usage'];
echo "Limit level is: " . $quota_value['limit'];
}
imap_close($mbox);
?>
Beispiel #2 Beispiel für imap_get_quota() ab 4.3 und aufwärts
<?php
$mbox = imap_open("{imap.example.org}", "mailadmin", "password", OP_HALFOPEN)
or die("can't connect: " . imap_last_error());
$quota_values = imap_get_quota($mbox, "user.kalowsky");
if (is_array($quota_values)) {
$storage = $quota_values['STORAGE'];
echo "STORAGE usage level is: " . $storage['usage'];
echo "STORAGE limit level is: " . $storage['limit'];
$message = $quota_values['MESSAGE'];
echo "MESSAGE usage level is: " . $message['usage'];
echo "MESSAGE limit is: " . $message['limit'];
/* ... */
}
imap_close($mbox);
?>
Diese Funktion ist momentan nur für Benutzer der c-client2000-Bibliothek (oder neuer) verfügbar.
Der angegebene imap_stream
muss als
Mail-Administrator geöffnet werden; diese Funktion schlägt
sonst fehl.