4

毎日メールボックスを空にする PHP スクリプトがあります。問題は、削除されたすべてのメールがゴミ箱に移動され、ゴミ箱が完全に削除されないことです。

メールボックスの処理には PHP IMAP コマンドを使用しました。

$this->_mbox = imap_open(
    $this->_data['server'],
    $this->_data['user'],
    $this->_data['pass'],
    OP_SILENT
)

...
imap_delete($this->_mbox, $index);

...
imap_expunge($this->_mbox);

ゴミを一掃するにはどうすればよいですか?

編集:

imap_delete() はメールを完全に削除します (ゴミ箱からも)。今、ゴミ箱フォルダーを読み取る方法を見つけようとしています。受信トレイを開くのと同じ方法でディレクトリを開こうとしましたが、成功しませんでした。

4

1 に答える 1

3

問題はにあるの$indexでしょうか?

すべてのゴミ箱メールボックスを消去したい場合は、代わりにこれを試してください:

<?php
$conn = @imap_open("\{$server/$serverType}Trash", $user, $pass) 
   or die("Connection to folder failed");

// delete email(s)
@imap_delete($conn,'1:*');   // to clear out an entire mailbox.
@imap_expunge($conn);
echo "Trash is empty.";
?>

お役に立てれば!クレジットはジャッキーに

于 2012-05-25T12:13:36.077 に答える