imap_append

Append a string message to a specified mailbox

&reftitle.description; `bool` `imap_append` `IMAP\Connection` `imap` `string` `folder` `string` `message` ``string``null```options`&null; ``string``null```internal_date`&null;

Appends a string `message` to the specified `folder`.

&reftitle.parameters;

&imap.imap-parameter.imap;

`folder`

- The mailbox name, see `imap_open` for more information

  &imap.mailboxname.insecure;

`message`

- The message to be append, as a string

  When talking to the Cyrus IMAP server, you must use "\r\n" as your end-of-line terminator instead of "\n" or the operation will fail

`options`

- If provided, the `options` will also be written to the `folder`

`internal_date`

- If this parameter is set, it will set the INTERNALDATE on the appended message. The parameter should be a date string that conforms to the rfc2060 specifications for a date_time value.

&reftitle.returnvalues;

&return.success;

&reftitle.changelog;

&Version; | &Description;
&imap.changelog.imap-param;
8.0.0 | `options` and `internal_date` are now nullable.

&reftitle.examples;

### `imap_append` example

    <?php
    $imap = imap_open("{imap.example.org}INBOX.Drafts", "username", "password");

    $check = imap_check($imap);
    echo "Msg Count before append: ". $check->Nmsgs . "\n";

    imap_append($imap, "{imap.example.org}INBOX.Drafts"
                       , "From: me@example.com\r\n"
                       . "To: you@example.com\r\n"
                       . "Subject: test\r\n"
                       . "\r\n"
                       . "this is a test message, please ignore\r\n"
                       );

    $check = imap_check($imap);
    echo "Msg Count after append : ". $check->Nmsgs . "\n";

    imap_close($imap);
    ?>