所以我當前的代碼在 PHP 中是這樣的:
$mailbox = imap_open('{imap.gmail.com:993/imap/ssl}INBOX', '[email protected]', 'password') or die('Cannot connect to Gmail: ' . imap_last_error());
此代碼允許 PHP 使用 IMAP 查看我的電子郵件收件箱,并且作業正常。
現在我的問題是,如何讓它檢查我收件箱中的所有新電子郵件并輸出“n新電子郵件!” 并將它們中的每一個標記為自動看到的。
如果有人能對此有所了解,我將不勝感激,因為我對 IMAP 非常陌生,并且通常以編程方式處理電子郵件。
uj5u.com熱心網友回復:
您可以使用imap_search1和imap_setflag_full2的組合
$mailbox = imap_open('{imap.gmail.com:993/imap/ssl}INBOX', '[email protected]', 'password');
// This gives an array of message IDs for all messages that are UNSEEN
$unseenMessages = imap_search($mailbox, 'UNSEEN');
// Keep in mind that imap_search returns false, if it doesn't find anything
$unseenCount = !$unseenMessages ? 0 : count($unseenMessages);
echo "$unseenCount New Emails!\n";
if ($unseenMessages) {
// The second parameter of imap_setflag_full function is a comma separated string of message IDs
// It can also be a range eg 1:5, which would be the same as 1,2,3,4,5
imap_setflag_full($mailbox, implode(',', $unseenMessages), '\Seen');
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/441465.html
