imap_get_quota
(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)
imap_get_quota — Liefert Quota-Einstellungen und Nutzungsstatistik der Postfächer
Beschreibung
imap_get_quota() ermittelt die aktuellen Quota-Einstellungen und tatsächlich genutzten Ressourcen 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().
Parameter-Liste
-
imap
-
Eine IMAP\Connection-Instanz.
-
quota_root
-
quota_root
sollte normalerweise in der Formuser.name
angegeben werden. name ist dabei der Name des Postfachs, für das Informationen geliefert werden sollen.
Rückgabewerte
Gibt ein Array mit den zwei Integer-Elementen limit und usage zurück, 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 Ressourcenwerten (d. h. 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 Angaben zu Limit und Nutzung.
Aus Gründen der Rückwärtskompatibilität werden außerdem weiterhin die beiden ursprünglichen Arrayelemente limit und usage zurückgegeben, ihre weitere Nutzung wird allerdings nicht empfohlen.
Changelog
Version | Beschreibung |
---|---|
8.1.0 |
Der Parameter imap erwartet nun eine
IMAP\Connection-Instanz; vorher wurde eine Ressource
erwartet.
|
Beispiele
Beispiel #1 imap_get_quota()-Beispiel
<?php
$mbox = imap_open("{imap.example.org}", "mailadmin", "password", OP_HALFOPEN)
or die("Kann keine Verbindung aufbauen: " . imap_last_error());
$quota_value = imap_get_quota($mbox, "user.kalowsky");
if (is_array($quota_value)) {
echo "Aktuell genutzt: " . $quota_value['usage'];
echo "Verfügbar (Limit): " . $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("Kann keine Verbindung aufbauen: " . imap_last_error());
$quota_values = imap_get_quota($mbox, "user.kalowsky");
if (is_array($quota_values)) {
$storage = $quota_values['STORAGE'];
echo "Speicherplatz (aktuell genutzt): " . $storage['usage'];
echo "Speicherplatz (Limit): " . $storage['limit'];
$message = $quota_values['MESSAGE'];
echo "Anzahl Nachrichten (aktuell): " . $message['usage'];
echo "Anzahl Nachrichten (Limit): " . $message['limit'];
/* ... */
}
imap_close($mbox);
?>
Anmerkungen
Diese Funktion ist aktuell erst ab der Bibliotheksversion c-client2000 verfügbar.
Der angegebene imap
muss als Mail-Administrator
geöffnet werden, sonst schlägt diese Funktion fehl.
Siehe auch
- imap_open() - Öffnet einen IMAP-Stream zu einem Postfach
- imap_set_quota() - Legt die Größenbeschränkung für ein Postfach fest
- imap_get_quotaroot() - Liefert die Quota-Einstellungen für ein Benutzerpostfach