我的需要: 我想在我的 GMail 帐户(或任何其他电子邮件服务)中获取未读电子邮件的计数,并且在我得到之后,我需要将它显示在我本地 PHP 服务器上的网页中。所以我需要一种脚本语言,那就是 PHP。但是我尝试了很多示例,但似乎没有一个有效。所以基本上我想要的是一个 PHP 脚本,它可以访问我的 GMail 帐户并将未读电子邮件的计数返回到网页。
我试过这个脚本是徒劳的,它总是在我的网页上显示“错误”。
<?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,它也在运行。