Когда вы получаете почту через pop3, есть две разные опции:
- pop может получать почту с сервера (это часто используется по умолчанию) или
- pop может читать почту с сервера и оставлять ее там (это называется «оставить на сервере»)
Вам нужно выйти на сервер.
Существует также флаг с именем "seen", который определяет, какие письма вам непрочитаны. Убедитесь, что вы правильно указали этот флаг, иначе вы можете запросить новые письма, и ваши письма не будут новыми.
imap_status () установит флаг чтения, imap_num_msg () не коснется никаких флагов.
imap_fetchstructure () извлекает не только структуру сообщения, но и все сообщение, и я подозреваю, что оно также отмечает чтение почты. Убедитесь, что оно что-то меняет, когда вы явно помечаете почту как новую (или непрочитанную) в клиенте, таком как thunderbird: в обзоре есть зеленый пузырь, который при чтении письма становится черным. Нажмите, чтобы пометить письмо как непрочитанное.