Don't forget that you can't be connected to the mailbox that you are going to rename (or delete).
If you have the following mailboxes:
INBOX
INBOX.Foo
...and want to rename "INBOX.Foo" to "INBOX.Bar" you have to be connected to "INBOX":
<?php
$mbox = imap_open('{imap.example.com}INBOX', 'username', 'password');
imap_renamemailbox($mbox, '{imap.example.com}INBOX.Foo', '{imap.example.com}INBOX.Bar');
imap_close($mbox);
?>
imap_renamemailbox
(PHP 4, PHP 5)
imap_renamemailbox — Ändert den Namen eines Postfachs
Beschreibung
bool imap_renamemailbox
( resource
$imap_stream
, string $old_mbox
, string $new_mbox
)
Die Funktion ändert den Namen des Postfachs old_mbox
in new_mbox (siehe imap_open()
für Angaben zum Format von Postfachnamen).
Parameter-Liste
-
imap_stream -
Eine von imap_open() zurückgegebene IMAP-Verbindung.
-
old_mbox -
Der bisherige Name des Postfachs, siehe imap_open() für weitere Informationen.
-
new_mbox -
Der neue Name des Postfachs, siehe imap_open() für weitere Informationen.
Rückgabewerte
Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.
Siehe auch
- imap_createmailbox() - Anlegen eines neuen Postfachs
- imap_deletemailbox() - Löscht ein Postfach
Christoffer Lindahl ¶
2 years ago
josh at paducahwebpublishing dot com ¶
13 years ago
Don't let "...string old_mbox, string new_mbox);" fool you. You have to add the server and port to the mailbox name also. So it would be something like:
imap_renamemailbox($mailbox, "{localhost:143}$oldfolder", "{localhost:143}$newfolder")
Just thought I would point it out, it took me a while to figure it out.
