[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Почему imap_delete + imap_expunge удаляют не все?
mrPuh
Всем привет!
Почему imap_delete + imap_expunge удаляют не все письма?

$imap_host = "{imap.mail.ru/imap:143}";
$mbox = imap_open($imap_host.'INBOX', $email, $pass);
$check = imap_status($mbox, $imap_host.'INBOX', SA_MESSAGES);
$i = 1;
while($i <= $check->messages) {
imap_delete($mbox, $i);
$i++;
}
imap_expunge($mbox);
imap_close ($mbox, CL_EXPUNGE);

Удаляется чуть больше половины писем, т.е. в ящике 400шт., после удаления остается около 180шт., после еще одного запуска 80шт. и т.д.
Полного удаления удается добиться только если обернуть код в еще один цикл с чтением кол-ва оставшихся писем и прогоном следующего удаления.
Почему с первого раза удаляются не все письма?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.