Remember to specify your flags like '\\Seen' rather than "\\Seen".
Of course, flags are an IMAP feature, not a POP feature.
Resetting \\Seen works from PHP 4.3 works fine on the modern mail servers I've tested.
(PHP 4, PHP 5, PHP 7)
imap_clearflag_full — Clears flags on messages
$imap_stream
, string $sequence
, string $flag
[, int $options
= 0
] )
This function causes a store to delete the specified
flag
to the flags set for the
messages in the specified sequence
.
imap_stream
An IMAP stream returned by imap_open().
sequence
A sequence of message numbers. You can enumerate desired messages with the X,Y syntax, or retrieve all messages within an interval with the X:Y syntax
flag
The flags which you can unset are "\\Seen", "\\Answered", "\\Flagged", "\\Deleted", and "\\Draft" (as defined by » RFC2060)
options
options
are a bit mask and may contain
the single option:
ST_UID
- The sequence argument contains UIDs
instead of sequence numbers
Returns TRUE
on success or FALSE
on failure.
Remember to specify your flags like '\\Seen' rather than "\\Seen".
Of course, flags are an IMAP feature, not a POP feature.
Resetting \\Seen works from PHP 4.3 works fine on the modern mail servers I've tested.
This function seems not to save the \\Seen flag permanently.
Testet on Win NT IIS 4.0 PHP 4.3 and imap-mail-server
I got a note that:
if u want to set a mail to "//Unseen", which not exists,
do it like this:
imap_clearflag_full($your_imap_connection,
$number_of_message,"//Seen");
but, remember to do
imap_close($imap, CL_EXPUNGE);
@ the END! so that it will be confirmed!
Cheers,
Nohado
imap_clearflag_full() and imap_setflag_full() seem to only change messageflags permanently with IMAP connections, not with POP3 connections.