(PHP 4, PHP 5, PHP 7, PHP 8)
imap_delete — 現在のメールボックスから削除するメッセージに印を付ける
$imap
, string $message_num
, int $flags
= 0
) : bool
message_num
が指すメッセージに
削除予定のマークをします。削除マークを付けられたメッセージは、
imap_expunge() がコールされるか
imap_close() に CL_EXPUNGE
を付けてコールされるかのどちらかが行われるまでメールボックスに残ったままになります。
imap
imap_open() が返す IMAP ストリーム。
message_num
メッセージ番号。
flags
FT_UID
を指定すると、
引数 message_num
を
UID
として処理することを関数に指示できます。
Returns true
.
例1 imap_delete() の例
<?php
$mbox = imap_open("{imap.example.org}INBOX", "username", "password")
or die("接続できません: " . imap_last_error());
$check = imap_mailboxmsginfo($mbox);
echo "Messages before delete: " . $check->Nmsgs . "<br />\n";
imap_delete($mbox, 1);
$check = imap_mailboxmsginfo($mbox);
echo "Messages after delete: " . $check->Nmsgs . "<br />\n";
imap_expunge($mbox);
$check = imap_mailboxmsginfo($mbox);
echo "Messages after expunge: " . $check->Nmsgs . "<br />\n";
imap_close($mbox);
?>
注意:
IMAP メールボックスは、コネクション間で保存可能なメッセージフラグを持っていません。 そのため、削除マークをつけたメッセージが本当に削除されたことを保証するためには、 同一の接続内で imap_expunge() をコールする必要があります。