0
在线手册:中文 英文

imap_expunge

(PHP 4, PHP 5, PHP 7)

imap_expungeDelete all messages marked for deletion

说明

imap_expunge ( resource $imap ) : bool

Deletes all the messages marked for deletion by imap_delete(), imap_mail_move(), or imap_setflag_full().

参数

imap_stream

imap_open() 返回的 IMAP 流。

返回值

Returns true.

0
在线手册:中文 英文

2位用户评论

[#1] ▲3▼ pavel cernik [71%] (2016-04-29 14:44:20)

imap_expunge() may change order of messages which were loaded using imap_sort(). That means, if you use foreach() on result of imap_sort() function and each pass you move/delete a message and instantly expunge them, next cycle, messages will have different numbers than imap_sort() returned and the script will fail.

[#2] ▲15▼ boswachter@xs4all.nl [71%] (2006-01-12 07:57:11)

@eisbrenner at gidn dot de You shouldn't call imap_expunge until before closing the connection. imap_delete tags a message for deletion, imap_expunge deletes all tagged messages. i.e.: for ($i = 0; $i < $num; $i++) { imap_delete($box, $i); } imap_expunge($box); imap_expunge should not be in your inner loop.