【发布时间】:2015-02-28 10:28:18
【问题描述】:
我正在尝试使用 imap_search 根据今天的当前日期获取我所有的 gmail 电子邮件,但我似乎无法获得任何结果。我已确保使用 date_default_timezone_set 设置我的时区,所以我相信这不是问题。
$mailConn = imap_open('{imap.gmail.com:993/imap/ssl}INBOX', $mailUser, $mailPass);
$search = 'ON ' . date('D, j M Y'); // search for today's email only
$emails = imap_search($mailConn, $search);
echo $search . '<br><br><br>'; // echoes ON Thu, 1 Jan 2015
if ($emails) {
foreach ($emails as $emailID) {
$overview = imap_fetch_overview($mailConn, $emailID, 0);
echo $overview[0]->subject . ' - ' . $overview[0]->date . '<br><br><br>';
}
} else {
echo 'No emails found.';
}
日期是否需要根据 $overview[0]->date 精确格式化,以便 imap_search 找到它?当我搜索所有电子邮件并输出 $overview[0]->date 这就是我得到的。
$mailConn = imap_open('{imap.gmail.com:993/imap/ssl}INBOX', $mailUser, $mailPass);
$search = 'ALL'; // search for all email
$emails = imap_search($mailConn, $search);
if ($emails) {
foreach ($emails as $emailID) {
$overview = imap_fetch_overview($mailConn, $emailID, 0);
echo $overview[0]->date . '<br><br><br>'; // echoes Thu, 1 Jan 2015 13:52:23 -0500
}
} else {
echo 'No emails found.';
}
【问题讨论】:
-
@CBroe 非常感谢您的帮助。我现在开始工作了。
标签: php imap gmail-imap