查詢

imap_setflag_full()函式—用法及示例

「 設定郵件的標記 」


函式名:imap_setflag_full()

適用版本:PHP 4, PHP 5, PHP 7

用法:該函式用於設定郵件的標記。它接受五個引數:郵件的郵箱連線資源、郵件的唯一識別符號、要設定的標記型別、標記值和選項。

引數:

  1. $imap_stream:必需。郵件的郵箱連線資源,透過 imap_open() 函式返回的資源。
  2. $msg_number:必需。郵件的唯一識別符號,透過 imap_uid() 或 imap_msgno() 函式返回的值。
  3. $flag_name:必需。要設定的標記型別,可以是以下之一:
    • "\Seen":表示標記郵件為已讀。
    • "\Answered":表示標記郵件已回覆。
    • "\Flagged":表示標記郵件為重要。
    • "\Deleted":表示標記郵件為已刪除。
    • "\Draft":表示標記郵件為草稿。
  4. $options:可選。標記值的選項,可以是以下之一:
    • ST_UID:表示 $msg_number 引數是郵件的唯一識別符號。
    • ST_SET:表示設定標記。
    • ST_SILENT:表示不顯示錯誤資訊。
  5. $recent_uid:可選。返回最近修改的郵件的唯一識別符號。

返回值:如果設定成功,則返回 true。如果設定失敗,則返回 false。

示例:

// 連線到郵箱
$mailbox = imap_open("{imap.example.com:993/imap/ssl}INBOX", "username", "password") or die("連線失敗");

// 獲取郵件的唯一識別符號
$msg_uid = imap_uid($mailbox, 1);

// 設定郵件為已讀
if (imap_setflag_full($mailbox, $msg_uid, "\\Seen", ST_UID) === true) {
    echo "郵件已標記為已讀";
} else {
    echo "設定標記失敗";
}

// 關閉郵箱連線
imap_close($mailbox);

上述示例中,我們首先透過 imap_open() 函式連線到郵箱。然後使用 imap_uid() 函式獲取第一封郵件的唯一識別符號。接下來,使用 imap_setflag_full() 函式將該郵件標記為已讀,透過傳遞標記型別 "\Seen" 和選項 ST_UID。最後,我們透過 imap_close() 函式關閉郵箱連線。

請注意,示例中的伺服器和賬戶資訊僅用於演示目的,實際使用時需要替換為有效的資訊。

補充糾錯
上一個函式: imap_append()函式
下一個函式: imap_setacl()函式
熱門PHP函式
分享連結