PHP imap_append - 设置 SEEN 选项

标签 php imap

我想将一条消息附加到 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"
                       );

最佳答案

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

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

The last argument, $options, are flags like for use with imap_setflag_full.

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

关于PHP imap_append - 设置 SEEN 选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12485868/

相关文章:

c# - 无法从传输连接 IMAP 读取数据

php - 如何在 PHP 中使用 imap 从电子邮件中提取内联图像(不是附件)

php - 使用 array_udiff 比较两个对象数组

php - 上传 100KB 以上的 zip 文件会出现内部服务器错误

php - 如何记录基于 Symfony 的 REST API(类似于 enunciate 的文档功能)

delphi - 如何从某个 IMAP 邮箱获取所有电子邮件的正文?

java - 将 com.sun.mail.imap.IMAPMessage 转换为字符串

php - 如何在 PHP 中的所有公共(public)方法之前调用方法?

php - 我的 MYSQL 注入(inject)语句是否容易受到攻击?

ruby - 如何在 Ruby/Rails 中缓存/序列化 Net::IMAP 对象?