I was having a problem where I was connecting to a POP3 server and no matter what I did PHP always said there was as many unread messages as there was messages in total.
After about an hour of Googling I found this in a comment in an existing file:
> POP3 considers ALL messages as "unseen" and/or "recent" because POP3 does not retain such info as seen or unseen
I hope this helps you save some time.