PHP Conference Nagoya 2025

imap_renamemailbox

(PHP 4, PHP 5, PHP 7, PHP 8)

imap_renamemailboxПереименовывает почтовый ящик

Описание

imap_renamemailbox(IMAP\Connection $imap, string $from, string $to): bool

Эта функция переименовывает old_mbox в new_mbox (формат имени параметра mbox дан в описании функции imap_open()).

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

imap

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

from

Старое имя. Более подробно читайте в описании imap_open()

Внимание

Передача в этот параметр непроверенных данных небезопасна, если включили директиву imap.enable_insecure_rsh.

to

Новое имя. Более подробно читайте в описании imap_open()

Внимание

Передача в этот параметр непроверенных данных небезопасна, если включили директиву imap.enable_insecure_rsh.

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

Функция возвращает true в случае успешного выполнения или false, если возникла ошибка.

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

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

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

Добавить

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

up
3
josh at paducahwebpublishing dot com
24 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.
up
1
Christoffer Lindahl
14 years ago
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);
?>
To Top