如何使用 php imap 将邮件消息移动到文件夹

发布于 2024-11-28 02:43:05 字数 584 浏览 0 评论 0原文

我似乎无法将邮件移至已保存的文件夹。这是我的代码:

$mbox = imap_open("{".$mail_server.":".$mail_port."}".$mail_folder,            
$mail_username, $mail_password) or die("Error opening mailbox: ".imap_last_error());

$countnum = imap_num_msg($mbox);
$msglist = array();

if( $countnum > 0 ) {
$num = 1;


while ($num <= $countnum) {

$msglist[] = $num;
$num++;

     }//end while loop

}

//move the email to our saved folder
imap_mail_move($mbox,implode(',',$msglist),'INBOX/Saved');
imap_expunge($mbox);
imap_close($mbox);

当我运行此脚本时,没有任何反应。该消息保留在收件箱中。有什么想法吗?谢谢!

I can't seem to move my mail messages to my saved folder. Here is my code:

$mbox = imap_open("{".$mail_server.":".$mail_port."}".$mail_folder,            
$mail_username, $mail_password) or die("Error opening mailbox: ".imap_last_error());

$countnum = imap_num_msg($mbox);
$msglist = array();

if( $countnum > 0 ) {
$num = 1;


while ($num <= $countnum) {

$msglist[] = $num;
$num++;

     }//end while loop

}

//move the email to our saved folder
imap_mail_move($mbox,implode(',',$msglist),'INBOX/Saved');
imap_expunge($mbox);
imap_close($mbox);

When I run this script nothing happens. The message stays in the inbox. Any thoughts? Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

方觉久 2024-12-05 02:43:05

查看 imap-mail-move() 的文档我看到您已将范围与 , 粘合在一起,并且从 1 开始计数,因此不需要 for 循环:

<?php 
$mbox = imap_open("{".$mail_server.":".$mail_port."}INBOX", $mail_username, $mail_password) or die("Error opening mailbox: ".imap_last_error());

$countnum = imap_num_msg($mbox);

if($countnum > 0) {
    //move the email to our saved folder
    $imapresult=imap_mail_move($mbox,'1:'.$countnum,'INBOX/Saved');
    if($imapresult==false){die(imap_last_error());}
    imap_close($mbox,CL_EXPUNGE);
}
?>

From looking at the docs for imap-mail-move() I see you've glued your range together with , and your counting up from 1 so theres no need for the for loop:

<?php 
$mbox = imap_open("{".$mail_server.":".$mail_port."}INBOX", $mail_username, $mail_password) or die("Error opening mailbox: ".imap_last_error());

$countnum = imap_num_msg($mbox);

if($countnum > 0) {
    //move the email to our saved folder
    $imapresult=imap_mail_move($mbox,'1:'.$countnum,'INBOX/Saved');
    if($imapresult==false){die(imap_last_error());}
    imap_close($mbox,CL_EXPUNGE);
}
?>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文