Как пометить только одно сообщение как & quot; \ flagged & quot; с клиентской библиотекой Horde Imap

Я пытаюсь пометить сообщение с флагом imap «\ flagged». Проблема в том, что помечается не только сообщение, которое я намеревался отметить, но и все другие сообщения, отправленные с того же адреса электронной почты.

Например, в моем почтовом ящике у меня есть 10 сообщений от [email protected]. Я хочу пометить только один из них как помеченный, поэтому я получаю его uid и отправляю запрос. Но он отмечает все 10 сообщений. Я хочу только тот с определенным идентификатором.

Я работаю с учетной записью 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);

1

Решение

Измените ваши параметры на это

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

Обратите внимание, как uids изменился на ids, Кроме того, я использовал константу флага, определенную в Horde_Imap_Client вместо.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]