imap_createmailbox

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

imap_createmailboxCreate a new mailbox

说明

imap_createmailbox(IMAP\Connection $imap, string $mailbox): bool

Creates a new mailbox specified by mailbox.

参数

imap

An IMAP\Connection instance.

mailbox

The mailbox name, see imap_open() for more information. Names containing international characters should be encoded by imap_utf7_encode()

警告

Passing untrusted data to this parameter is insecure, unless imap.enable_insecure_rsh is disabled.

返回值

成功时返回 true, 或者在失败时返回 false

更新日志

版本 说明
8.1.0 The imap parameter expects an IMAP\Connection instance now; previously, a 资源(resource) was expected.

范例

示例 #1 imap_createmailbox() example

<?php
$mbox 
imap_open("{imap.example.org}""username""password"OP_HALFOPEN)
     or die(
"can't connect: " imap_last_error());

$name1 "phpnewbox";
$name2 imap_utf7_encode("phpnewböx"); // phpnewb&w7Y-x

$newname $name1;

echo 
"Newname will be '$name1'<br />\n";

// we will now create a new mailbox "phptestbox" in your inbox folder,
// check its status after creation and finally remove it to restore
// your inbox to its initial state

if (@imap_createmailbox($mboximap_utf7_encode("{imap.example.org}INBOX.$newname"))) {
    
$status = @imap_status($mbox"{imap.example.org}INBOX.$newname"SA_ALL);
    if (
$status) {
        echo 
"your new mailbox '$name1' has the following status:<br />\n";
        echo 
"Messages:   " $status->messages    "<br />\n";
        echo 
"Recent:     " $status->recent      "<br />\n";
        echo 
"Unseen:     " $status->unseen      "<br />\n";
        echo 
"UIDnext:    " $status->uidnext     "<br />\n";
        echo 
"UIDvalidity:" $status->uidvalidity "<br />\n";

        if (
imap_renamemailbox($mbox"{imap.example.org}INBOX.$newname""{imap.example.org}INBOX.$name2")) {
            echo 
"renamed new mailbox from '$name1' to '$name2'<br />\n";
            
$newname $name2;
        } else {
            echo 
"imap_renamemailbox on new mailbox failed: " imap_last_error() . "<br />\n";
        }
    } else {
        echo 
"imap_status on new mailbox failed: " imap_last_error() . "<br />\n";
    }

    if (@
imap_deletemailbox($mbox"{imap.example.org}INBOX.$newname")) {
        echo 
"new mailbox removed to restore initial state<br />\n";
    } else {
        echo 
"imap_deletemailbox on new mailbox failed: " implode("<br />\n"imap_errors()) . "<br />\n";
    }

} else {
    echo 
"could not create new mailbox: " implode("<br />\n"imap_errors()) . "<br />\n";
}

imap_close($mbox);
?>

参见