4

我想将消息附加到 imap 发送箱 - 下面的代码只是将消息视为新消息。

据我了解,添加 SEEN 选项应该将其标记为已读,但是我已经尝试了该选项的所有可能位置,但仍然将消息标记为新消息。

看过 imap_setflag_full 后,这需要一个邮件号码来设置标志,并且鉴于电子邮件刚刚添加,我看不出有办法抓住号码来设置标志(?)。

有什么建议么?

 imap_append($inbox, "{mail.domain.com:143/imap/notls}INBOX.Sent"
                       , "From: $fromaddress\r\n"
                       . "To: $toaddress\r\n"
                       . "Subject: [Email Processed] $subject\r\n"
                       . "Date: $date_return  \r\n"
                       . "X-Mailer: Cmail_v2.0 \r\n"
                       . "X-Originating-IP: {$_SERVER['REMOTE_ADDR']}\r\n"
                       . "MIME-Version: 1 \r\n"
                       . "Content-Type: text/html;\r\n\tcharset=\"ISO-8859-1\"\r\n"
                       . "Content-Transfer-Encoding: 8bit \r\n"
                       . "\r\n\r\n"
                       . "$message_return \r\n"
                       );
4

1 回答 1

4

通过$options参数传递你的标志。

http://php.net/manual/en/function.imap-append.php#74907

最后一个参数 $options 是与 imap_setflag_full 一起使用的标志。

编辑: 再次阅读您的帖子后,我意识到您可能已经通过 $options 参数传递了标志。这很好,但如果你通过“SEEN”,那就是你的问题。IMAP4 RFC:第2.3.2 节。标志消息属性将其定义为带有反斜杠和大写 S 的“\Seen”。该标志字符串是否解决了您的问题?

于 2012-09-18T23:09:26.623 回答