imap_delete
(PHP 4, PHP 5, PHP 7, PHP 8)
imap_delete — Markiert eine Nachricht im aktuellen Postfach zur Löschung
Beschreibung
Die mit message_nums
angegebene Nachricht wird zur
Löschung vorgemerkt. Entsprechend markierte Nachrichten bleiben im
Postfach erhalten, bis entweder imap_expunge()
aufgerufen wird oder imap_close() mit der Option
CL_EXPUNGE
beim Schließen der Verbindung.
Parameter-Liste
-
imap
-
Eine IMAP\Connection-Instanz.
-
message_nums
-
Ein String, der eine oder mehrere Nachrichten im IMAP4-üblichen Sequenzformat darstellt (
"n"
,"n:m"
oder eine Kombination daraus, durch Kommas getrennt). -
flags
-
Mit Hilfe der Option
FT_UID
kann festgelegt werden, dassmessage_nums
UID
s anstelle der Nachrichtennummern enthält.
Rückgabewerte
Gibt true
zurück.
Changelog
Version | Beschreibung |
---|---|
8.1.0 |
Der Parameter imap erwartet nun eine
IMAP\Connection-Instanz; vorher wurde eine Ressource
erwartet.
|
Beispiele
Beispiel #1 imap_delete()-Beispiel
<?php
$mbox = imap_open("{imap.example.org}INBOX", "username", "password")
or die("Kann keine Verbindung aufbauen: " . imap_last_error());
$check = imap_mailboxmsginfo($mbox);
echo "Anzahl der Nachrichten vor imap_delete: " . $check->Nmsgs . "<br />\n";
imap_delete($mbox, 1);
$check = imap_mailboxmsginfo($mbox);
echo "Anzahl der Nachrichten nach imap_delete: " . $check->Nmsgs . "<br />\n";
imap_expunge($mbox);
$check = imap_mailboxmsginfo($mbox);
echo "Anzahl der Nachrichten nach imap_expunge: " . $check->Nmsgs . "<br />\n";
imap_close($mbox);
?>
Anmerkungen
Hinweis:
Bei IMAP-Postfächern können Nachrichten-Flags serverseitig nicht zwischen Verbindungen gespeichert werden; markierte Nachrichten sollten daher noch während der aktuellen Verbindung mit imap_expunge() entfernt werden, ansonsten bleiben sie möglicherweise ohne Löschmarkierung weiter erhalten.
Siehe auch
- imap_undelete() - Nimmt eine bereits gesetzte Löschmarkierung einer Nachricht zurück
- imap_expunge() - Löscht alle zum Löschen markierte Nachrichten
- imap_close() - Schließt einen IMAP-Stream