(PHP 4, PHP 5, PHP 7, PHP 8)
imap_createmailbox — Создать новый почтовый ящик
Создаёт новый почтовый ящик, указанный в mailbox
.
imap
Экземпляр IMAP\Connection.
mailbox
Имя почтового ящика. Более подробно смотрите imap_open(). Имена почтовых ящиков, содержащие интернациональные символы должны быть закодированы с помощью imap_utf7_encode().
Если imap.enable_insecure_rsh не отключён, то передача в этот параметр не проверенных данных не безопасна.
Возвращает true
в случае успешного выполнения или false
в случае возникновения ошибки.
Версия | Описание |
---|---|
8.1.0 |
Параметр imap теперь ожидает экземпляр IMAP\Connection; ранее ожидался ресурс (resource) imap .
|
Пример #1 Пример использования imap_createmailbox()
<?php
$mbox = imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
or die("не получилось подключиться: " . imap_last_error());
$name1 = "phpnewbox";
$name2 = imap_utf7_encode("phpnewböx"); // phpnewb&w7Y-x
$newname = $name1;
echo "Новым именем будет '$name1'<br />\n";
// теперь создадим новый ящик "phptestbox" в вашем входящем каталоге,
// проверим его статус и удалим, чтобы вернуть ваш каталог к первоначальному
// состоянию
if (@imap_createmailbox($mbox, imap_utf7_encode("{imap.example.org}INBOX.$newname"))) {
$status = @imap_status($mbox, "{imap.example.org}INBOX.$newname", SA_ALL);
if ($status) {
echo "ваш новый почтовый ящик называется '$name1' и имеет следующий статус:<br />\n";
echo "Сообщений: " . $status->messages . "<br />\n";
echo "Новых: " . $status->recent . "<br />\n";
echo "Непрочитанных: " . $status->unseen . "<br />\n";
echo "Следующий UID: " . $status->uidnext . "<br />\n";
echo "Корректность UID:" . $status->uidvalidity . "<br />\n";
if (imap_renamemailbox($mbox, "{imap.example.org}INBOX.$newname", "{imap.example.org}INBOX.$name2")) {
echo "переименуем новый ящик из '$name1' в '$name2'<br />\n";
$newname = $name2;
} else {
echo "вызов imap_renamemailbox для нового ящика завершился ошибкой: " . imap_last_error() . "<br />\n";
}
} else {
echo "вызов imap_status для нового ящика завершился ошибкой: " . imap_last_error() . "<br />\n";
}
if (@imap_deletemailbox($mbox, "{imap.example.org}INBOX.$newname")) {
echo "новый почтовый ящик удалён для восстановления первоначального состояния<br />\n";
} else {
echo "вызов imap_deletemailbox на новом почтовом ящике завершился ошибкой: " . implode("<br />\n", imap_errors()) . "<br />\n";
}
} else {
echo "невозможно создать новый почтовый ящик: " . implode("<br />\n", imap_errors()) . "<br />\n";
}
imap_close($mbox);
?>