函式名:imap_delete()
適用版本:PHP 4, PHP 5, PHP 7
用法:imap_delete(resource $imap_stream, string $msg_number, int $options = 0): bool
函式描述:imap_delete() 函式用於標記指定郵件的刪除狀態。被標記為刪除的郵件將在後續執行 imap_expunge() 函式時被永久刪除。
引數:
- $imap_stream:必需。一個有效的 IMAP 連線資源。
- $msg_number:必需。一個表示郵件編號的字串或整數。可以是單個郵件的編號,也可以是以逗號分隔的多個郵件編號。
- $options:可選。一個可選的選項引數,預設為 0。可以使用以下選項之一:
- CL_EXPUNGE:將在標記刪除後立即執行永久刪除。
- FT_UID:將 $msg_number 引數視為 UID 序列號而不是郵件的編號。
返回值:成功時返回 true,失敗時返回 false。
示例:
// 建立 IMAP 連線
$imap_stream = imap_open("{imap.example.com:993/ssl}INBOX", "username", "password");
// 標記郵件編號為 1 的郵件為刪除狀態
if (imap_delete($imap_stream, "1")) {
echo "郵件刪除成功!";
} else {
echo "郵件刪除失敗!";
}
// 執行永久刪除
if (imap_expunge($imap_stream)) {
echo "永久刪除操作成功!";
} else {
echo "永久刪除操作失敗!";
}
// 關閉 IMAP 連線
imap_close($imap_stream);
上述示例中,我們首先透過 imap_open() 函式建立了一個 IMAP 連線。然後,使用 imap_delete() 函式將郵件編號為 1 的郵件標記為刪除狀態。最後,透過 imap_expunge() 函式執行永久刪除操作。如果刪除和永久刪除操作都成功,則會輸出相應的成功訊息。最後,使用 imap_close() 函式關閉了 IMAP 連線。
請注意,在執行 imap_expunge() 函式之前,標記為刪除的郵件只是被標記為刪除狀態,並不會立即從郵件伺服器上刪除。只有在執行 imap_expunge() 函式時,被標記為刪除的郵件才會被永久刪除。