Я создаю приложение PHP для сохранения в моей базе данных всех сообщений электронной почты с учетной записи электронной почты.
Когда я подключаюсь к учетной записи gmail и использую функцию imap_list(), я получаю следующие поля:
array {
[0]=> "{imap.gmail.com:993/ssl}INBOX"
[1]=> "{imap.gmail.com:993/ssl}[Gmail]/Caixote do Lixo"
[2]=> "{imap.gmail.com:993/ssl}[Gmail]/Com estrela"
[3]=> "{imap.gmail.com:993/ssl}[Gmail]/Correio enviado"
[4]=> "{imap.gmail.com:993/ssl}[Gmail]/Importante"
[5]=> "{imap.gmail.com:993/ssl}[Gmail]/Rascunhos"
[6]=> "{imap.gmail.com:993/ssl}[Gmail]/Spam"
[7]=> "{imap.gmail.com:993/ssl}[Gmail]/Todo o correio" }
Эти коробки находятся на португальском языке. Когда я подключаюсь к другой учетной записи, ящики имеют английские имена. Это означает, что у меня нет средств знать, какой из ящиков является полем " Корзина" или " Отправлено", например.
Есть ли способ правильно идентифицировать каждый ящик?
Эта проблема немного сложна. Я решил это, подключившись к клиенту imap, используя соединение сокета вместо использования PHP-функций imap. Таким образом, я получаю специальные атрибуты, которые мне нужны.
Возможно, вам нужно проверить количество сообщений в каждой папке? Обычно работающие поля "Корзина" или "Отправленные" содержат сообщения.