imap_append

指定されたメールボックスに文字列メッセージを追加する

説明

bool imap_append(
    IMAP\Connection $imap,
    string $folder,
    string $message,
    stringnull $options = null,
    stringnull $internal_date = null
)

指定したメールボックス folder に文字列メッセージ message を追加します。

パラメータ

imap

IMAP\Connection クラスのインスタンス。

folder

メールボックスの名前。詳細は imap_open を参照ください。

警告

信頼できないデータをこのパラメータに渡すのであれば、 imap.enable_insecure_rsh を無効にしておかなければ危険です。

message

追加したいメッセージを表す文字列。

Cyrus IMAP サーバーと通信する際には、改行コードとして "\n" のかわりに "\r\n" を使用する必要があります。さもなくば、操作は失敗します。

options

指定した場合は、 options もその folder に書きこまれます。

internal_date

このパラメータが設定されていると、追加したメッセージに INTERNALDATE を設定します。 このパラメータは、rfc2060 の日付時刻値の仕様を満たす文字列でなければなりません。

戻り値

成功した場合に true を、失敗した場合に false を返します。

変更履歴

バージョン 説明
8.1.0 引数 imap は、IMAP\Connection クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、有効な imap リソース が期待されていました。
8.0.0 optionsinternal_date は、nullable になりました。

例1 imap_append の例

<?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);
?>