PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
mrPooh
Отправлено: 31 Января, 2017 - 21:55:14
Post Id


Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Март 2016  


Помог: 0 раз(а)




Всем привет!
Почему imap_delete + imap_expunge удаляют не все письма?
CODE (htmlphp):
скопировать код в буфер обмена
  1. $imap_host = "{imap.mail.ru/imap:143}";
  2. $mbox = imap_open($imap_host.'INBOX', $email, $pass);
  3. $check = imap_status($mbox, $imap_host.'INBOX', SA_MESSAGES);
  4. $i = 1;
  5. while($i <= $check->messages) {
  6.         imap_delete($mbox, $i);
  7.         $i++;
  8. }
  9. imap_expunge($mbox);
  10. imap_close ($mbox, CL_EXPUNGE);
  11.  

Удаляется чуть больше половины писем, т.е. в ящике 400шт., после удаления остается около 180шт., после еще одного запуска 80шт. и т.д.
Полного удаления удается добиться только если обернуть код в еще один цикл с чтением кол-ва оставшихся писем и прогоном следующего удаления.
Почему с первого раза удаляются не все письма?
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Работа с сетью »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB