Я использую функции IMAP PHP для извлечения сообщений из почтового ящика POP3 и задавался вопросом, есть ли способ рассказать о новых сообщениях, кроме старых?
К сожалению, я не могу просто удалить те, которые извлекаются, поскольку они должны оставаться на почтовом сервере, поэтому теперь я задаюсь вопросом, что каждый последующий момент, когда я подключаюсь, как я могу просто получить новые или быть в состоянии рассказать о новых из старых, которые я уже получил ранее?
Я знаю, что каждое сообщение имеет прикрепленный к нему UID, и я мог бы использовать это. Однако я читал, что это может измениться, если сообщения будут удалены; поскольку сообщения могут быть удалены с сервера по дорожке.
Хорошо это нашел ..
В принципе, протокол pop3 не поддерживает эту функцию. Однако вы можете реализовать это с идентификатором сообщения. Message-Id – уникальный идентификатор электронной почты на сервере POP3. Ваше приложение может получить идентификатор сообщения указанного сообщения по методу GetMsgID объекта POPMAIN.
Во-первых, ваше приложение должно записать идентификатор сообщения электронной почты, полученный в локальный список идентификаторов сообщений. В следующий раз, прежде чем вы получите электронное письмо, сравните локальный идентификатор сообщения с удаленным идентификатором сообщения. Если этот идентификатор сообщения существует в вашем локальном списке идентификаторов сообщений, он является старым, иначе он является новым.
Хотя я уверен, что прочитал, что не все клиенты вернут message_id … кто-нибудь знает, правильно ли это?