PHP imap_createmailbox function

Like this blog? Consider exploring one of our sponsored banner ads...

imap_createmailbox

(PHP 3, PHP 4, PHP 5)

imap_createmailbox — Create a new mailboxDescriptionbool imap_createmailbox ( resource imap_stream, string mailbox )

Creates a new mailbox specified by mailbox.

Parameters

imap_stream

An IMAP stream returned by
imap_open().

mailbox

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


Return Values

Returns TRUE on success or FALSE on failure.

Examples

Example 1. imap_createmailbox() example

$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");
 
$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 finaly remove it to restore
// your inbox to its initial state
 
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 "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);

See Also

imap_renamemailbox()imap_deletemailbox()



About this entry