受信サーバーに溜まっている件名をすべて表示する。
$server = array(
'protocol'=>'pop3',
'host'=>'pop.example.com',
'user'=>'userID',
'pass'=>'password',
);
qd_receive_mail( 'start' , $server );
$max = qd_receive_mail( 'count' );
echo "<pre>";
for($i = 1 ; $i <= $max ; $i++){
echo 'Mail Number: '.qd_receive_mail( 'pointer' ).' subject: ';
echo qd_receive_mail( 'header' , array('subject','name') );
echo "\r\n";
qd_receive_mail( 'next' );
}
echo "</pre>";
die();
本文を取得するつもりがないのであれば、ヘッダのみ取得するようにするには次の文を'start'の次に挿入します。これで本文を受信サーバーから取得しないので若干高速になります。
qd_receive_mail( 'popHigh' , 0 );
qd_receive_mail( 'start' , $server );
qd_receive_mail( 'popHigh' , 0 );
$max = qd_receive_mail( 'count' );
$target = array();
for($i = 1 ; $i <= $max ; $i++){
$subject = qd_receive_mail( 'header' , array('subject','name') );
if( false !== mb_strpos( $subject , '未承諾広告' ) ){
$target[] = qd_receive_mail( 'pointer' );
}
qd_receive_mail( 'next' );
}
foreach( $target as $del_id ){
qd_receive_mail( 'delete' , $del_id );
}
qd_receive_mail( 'done' );
この例では、いったん$target変数に、該当のメール番号を溜めて、後でまとめて削除しています。
このようにしなくても、最初のif文の部分で、deleteしても大丈夫ですが、必ず最後にdoneコマンドを実行することを忘れないようにしてください。