В моем случае, uid всегда совпадает с msgno и message_id
Хуже всего то, что когда я удаляю сообщения на почтовом сервере, msgno и UID перераспределяются в порядкеприбытие.
Я создал небольшой скрипт, который доставляет письма с imap_search и imap_overview для получения заголовков, я использую imap_uid ($ this-> GetConnection (), $ msgno);заставить получить UID из MSGNO, и вот результат:
echo "MSGNO: $ msgno UID: $ Overview-> uid UIDBYNO:".$ Mbox-> GetUidByNum ($ msgno) «.";
MSGNO: 851 UID: 851 UIDBYNO: 851 MSGNO: 852 UID: 852 UIDBYNO: 852 MSGNO: 853 UID: 853 UIDBYNO: 853 MSGNO: 854 UID: 854 UIDBYNO: 8555 8ID UIDUIDBYNO: 855 MSGNO: 856 UID: 856 UIDBYNO: 856 MSGNO: 857 UID: 857 UIDBYNO: 857
Итак 1) uid не уникален 2) msgno всегда совпадает с uid
Может почтовый сервер не уважает RFC!