有没有办法使用imap_search函数在IMAP服务器上搜索消息。根据php手册,imap_search只允许有限数量的搜索选项,而UID搜索不在它们之间: http://us.php.net/manual/en/function.imap-search.php
那么,是否有办法获取基于UID的消息(高于提供的UID)。这应该得到IMAP4协议修订后的支持(我认为自2003年以来)。
答案 0 :(得分:0)
我相信你已经通过广泛的搜索,最终降落在这里。让我们面对它,它是不可能的;但该功能可以有解决方法。
也许您可以使用与此类似的代码:
$imap_stream = imap_open($mailbox, $username, $password);
$msg_no = 1212; //lets say momentarily
while(imap_fetchheader($imap_stream, $msg_no)){
//do some processing
$msg_no++;
}// loop will continue till there is no more of newer messages
请注意,这可能会导致最长执行时间,因此您可以使用for循环来执行特定迭代次数的作业。
$imap_stream = imap_open($mailbox, $username, $password);
$msg_no = 1212; //lets say
for($i=0;$i<=50;$i++){
if(imap_fetchheader($imap_stream, $msg_no)){
//do some processing
}
$msg_no++;
} // this will go for 50 times