您不應該在關閉連線之前呼叫 imap_expunge。 imap_delete 標記要刪除的訊息,imap_expunge 刪除所有已標記的訊息。例如:
for ($i = 0; $i < $num; $i++) {
imap_delete($box, $i);
}
imap_expunge($box);
imap_expunge 不應該放在您的內迴圈中。
(PHP 4, PHP 5, PHP 7, PHP 8)
imap_expunge — 刪除所有標記為刪除的郵件
刪除所有由 imap_delete()、imap_mail_move() 或 imap_setflag_full() 標記為刪除的郵件。
永遠回傳 true
。
版本 | 說明 |
---|---|
8.1.0 | imap 參數現在需要一個 IMAP\Connection 實例;先前需要一個有效的 imap 資源。 |
您不應該在關閉連線之前呼叫 imap_expunge。 imap_delete 標記要刪除的訊息,imap_expunge 刪除所有已標記的訊息。例如:
for ($i = 0; $i < $num; $i++) {
imap_delete($box, $i);
}
imap_expunge($box);
imap_expunge 不應該放在您的內迴圈中。
imap_expunge() 可能會改變使用 imap_sort() 載入的郵件順序。
這表示,如果您在 imap_sort() 函數的結果上使用 foreach(),並且每次傳遞時都移動/刪除郵件並立即清除它們,則下一個循環中,郵件的編號將與 imap_sort() 返回的編號不同,並且腳本將會失敗。