【问题标题】:How to flag only one message as "\flagged" with Horde Imap Client library如何使用 Horde Imap 客户端库仅将一条消息标记为“\已标记”
【发布时间】:2015-03-20 07:41:32
【问题描述】:

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

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

我正在使用 gmail 帐户。在 gmail 的网络邮件本身中标记邮件时,它只会将一封邮件标记为预期的邮件,因此这并不是 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);

【问题讨论】:

  • 另外,我认为您需要用 \\ 转义 \,使其变为 \\flagged

标签: php imap horde


【解决方案1】:

将您的选项更改为此

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-26
    • 1970-01-01
    • 2015-10-03
    • 2011-01-16
    • 1970-01-01
    • 2019-03-14
    • 2019-05-05
    • 1970-01-01
    相关资源
    最近更新 更多