【发布时间】:2012-09-25 09:48:04
【问题描述】:
我正在尝试使用 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
【问题讨论】:
-
关于此的另一个线程:stackoverflow.com/questions/6262819/…。顺便说一句,您是否尝试过复制到另一个目录?您是否尝试将相同的东西用于另一个 imap 帐户(不是谷歌)? (只是试图缩小你的问题:))。
-
您是否尝试过(没有CP_UID,并且一次性关闭和删除?): imap_mail_copy($mbox,'16','[Gmail]/Starred'); // 16是消息号,也可以是范围。(ex: '1:15') imap_close($mbox,CL_EXPUNGE);
-
删除 CP_UID 已经成功了——谢谢伙计!
标签: php gmail-imap