我需要: 我想在我的GMail帳戶(或任何其他電子郵件服務)中獲取未讀電子郵件的數量,並且在得到該數據後,我需要將其顯示在網頁中在我的本地PHP服務器上。所以我需要一種腳本語言,那就是PHP。但我嘗試了很多例子,但似乎沒有一個可行。所以基本上我想要的是一個PHP腳本,可以訪問我的GMail帳戶並將未讀電子郵件的數量返回到網頁。使用PHP獲取未讀電子郵件數
我試過這個腳本是徒勞的,它總是在我的網頁上一直顯示「錯誤」。
<?php
function CountUnreadMail($host, $login, $passwd) {
$mbox = imap_open($host, $login, $passwd);
$count = 0;
if (!$mbox) {
echo "Error";
} else {
$headers = imap_headers($mbox);
foreach ($headers as $mail) {
$flags = substr($mail, 0, 4);
$isunr = (strpos($flags, "U") !== false);
if ($isunr)
$count++;
}
}
imap_close($mbox);
return $count;
}
$hostname = '{imap.gmail.com:993/imap/ssl}INBOX';
$username = 'username';
$password = 'password';
$count = CountUnreadMail($hostname, $username, $password);
?>
由於Chris幫助,我會嘗試這個劇本,但我唯一看到的是一個空白頁。這裏是另一個腳本,我妄圖:
<?php
function mailCount($host, $login, $passwd) {
$mbox = imap_open($host, $login, $passwd);
$mail = '';
if($mail = imap_check($mbox)) {
return $mail->Nmsgs;
}
}
$hostname = '{imap.gmail.com:993/imap/ssl}INBOX';
$username = 'phpimap123'; //GMail username
$password = 'phptesting'; //Password
$count = mailCount($hostname, $username, $password);
echo $count;
?
PS:我已經做了一個Gmail帳戶測試目的。
我在MacBook Air上運行Mac OS X Lion。 PHP啓用並運行,我也有MAMP,它也在運行。
我會在哪裏放置我的帳戶詳細信息(密碼和用戶名) – hatimbt 2012-04-27 05:50:15
這將按照您現在的操作完成。我在那裏添加了$ mbox變量,就像你擁有它一樣。繼續,只需在if()語句上方輸入您的$ mbox連接代碼即可。如果您願意,隨意也可以將登錄憑據添加到該功能中。我更喜歡將這些東西構建到類中,並將所有這些數據發送到構造函數中,但無論您感到舒服,都可以。:) – ChrisG 2012-04-27 05:52:37
那麼請把這些代碼粘貼到這裏。我真的很陌生。 – hatimbt 2012-04-27 05:56:35