0

我正在尝试使用 imap_mail_copy 将邮件从收件箱复制到 Gmail 中的另一个文件夹

我能够很好地连接到邮箱并阅读邮件,但我无法在没有错误的情况下移动它们

if(!imap_mail_copy($connection,'$msg_num','[Gmail]/Starred', CP_UID))
        {
            echo "Didn't move messages number: $msg_num";
        }
imap_expunge($connection); 
imap_close($connection,CL_EXPUNGE); 

其中 $connection 是流,$msg_num 是从标头中读取的 ($msg_num = $header->Msgno;),Starred 是文件夹

错误是

PHP Notice:  Unknown: IMAP protocol error: Could not parse command (errflg=2) in 

Unknown on line 0
PHP Notice:  Unknown: Could not parse command (errflg=2) in Unknown on line 0
4

1 回答 1

1

如果$msg_num是您需要提供给函数的变量,则需要将代码更改为:

if(!imap_mail_copy($connection,"$msg_num",'[Gmail]/Starred', CP_UID))

或者:

if(!imap_mail_copy($connection,$msg_num,'[Gmail]/Starred', CP_UID))

或(如果您需要将其转换为字符串):

if(!imap_mail_copy($connection, (string) $msg_num,'[Gmail]/Starred', CP_UID))

现在您实际上是在发送字符串$msg_num

于 2012-09-25T01:48:04.763 回答