PHP   发布时间:2022-04-09  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php – 如何将邮件从Gmail收件箱移动到标签?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用以下代码邮件从收件箱移到已处理的标签中:
$in@L_772_3@ = imap_open($host,$user,$pass) or die('Error: ' . imap_last_error());

if( $emails = imap_search($in@L_772_3@,'ALL') )
{
    foreach($emails as $email_number) {
        imap_mail_move($in@L_772_3@,$email_number,'Processed') or die('Error');
    }

}
imap_expunge($in@L_772_3@);
imap_close($in@L_772_3@);

不幸的是,当消息获得Processed标签时,它们仍然留在In@L_772_3@中.

我怎么能让他们离开收件箱?

实际上…电子邮件留在收件箱中的原因是,当imap_mail_move做了它的事情时,所有剩余邮件的ID减1,所以当foreach循环移动到下一条消息时,留下一条消息.这跳过每次迭代重复的消息.这就是为什么似乎imap_mail_move无效.

解决方案是使用唯一的消息UID而不是可能重复的ID:

$in@L_772_3@  = imap_open( $host,$pass );
$emails = imap_search( $in@L_772_3@,'ALL',SE_UID );

if( $emails ) {
    foreach( $emails as $email_uid ) {
        imap_mail_move($in@L_772_3@,$email_uid,'processed',CP_UID);
    }
}

大佬总结

以上是大佬教程为你收集整理的php – 如何将邮件从Gmail收件箱移动到标签?全部内容,希望文章能够帮你解决php – 如何将邮件从Gmail收件箱移动到标签?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。