如何仅将一条消息标记为" \ flagged"与Horde Imap客户端库

时间:2015-03-20 07:41:33

标签: php imap horde

我正在尝试用imap标志“\ flagged”标记消息。问题是,不仅标记的消息被标记,而且同一电子邮件地址发送的所有其他消息也被标记。

例如,在我的邮箱中,我有来自example@host.com的10条消息。我想只将其中一个标记为“已标记”,因此我得到它的uid并发送请求。但它标志着所有10条消息。我只希望那个具有特定的uid。

我正在使用gmail帐户。在gmail的webmail本身标记消息时,它只标记一条消息,因此gmail本身并不是一个奇怪的功能。

我正在使用的代码如下。有什么问题?

$uids = new Horde_Imap_Client_Ids([1521]);//uid of message I want to mark as flagged

$options = [
    'uids' => $uids,
    'add' => ['\flagged'],
];

$Imap_Client_Socket->store('INBOX', $options);

1 个答案:

答案 0 :(得分:0)

将您的选项更改为此

$options = [
  'ids' => $uids,
  'add' => [Horde_Imap_Client::FLAG_FLAGGED],
];

注意uids如何更改为ids。另外,我使用了Horde_Imap_Client中定义的标志常量。