Всем привет!
Почему imap_delete + imap_expunge удаляют не все письма?
CODE ( htmlphp):
скопировать код в буфер обмена
$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шт. и т.д.
Полного удаления удается добиться только если обернуть код в еще один цикл с чтением кол-ва оставшихся писем и прогоном следующего удаления.
Почему с первого раза удаляются не все письма?
|