PHP从IMAP邮件帐户删除旧邮件 [英] PHP delete old messages from IMAP mail account
本文介绍了PHP从IMAP邮件帐户删除旧邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图访问IMAP网络邮件帐户,以便使用php删除旧邮件。到目前为止,我拥有的脚本是:
I am trying to access a IMAP webmail account in order to delete old messages using php. The script I have so far is:
<?php
$del = new DateTime();
$del->modify('-1 month');
$mbox = imap_open("{imap.test.com:993/imap/ssl}INBOX", "username", "password")
or die("can't connect: " . imap_last_error());
$MC = imap_check($mbox);
// Fetch an overview for all messages in INBOX
$result = imap_fetch_overview($mbox,"1:{$MC->Nmsgs}",0);
foreach ($result as $overview) {
$date = $overview->date;
$date = DateTime::createFromFormat('D, d M Y H:i:s O', $date);
if($date<$del) {
imap_delete($mbox,$overview->msgno);
}
}
imap_expunge($mbox);
imap_close($mbox);
?>
代码现在正确。但是虚拟主机服务不允许通过脚本从本地主机访问其IMAP服务器
推荐答案
您需要在分号上这行:
imap_expunge($mbox);
当无法解析PHP时,它将返回500错误。
when PHP can't be parsed it returns a 500 error.
这篇关于PHP从IMAP邮件帐户删除旧邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文