Google

NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7">

imap_getmailboxes

(PHP 3>= 3.0.12, PHP 4 )

imap_getmailboxes --  メールボックスのリストを読み込み、各ボックスに関する詳細な情報を返す

説明

array imap_getmailboxes ( int imap_stream, string ref, string pattern)

メールボックス情報を有するオブジェクトの配列を返します。各オブジェクトは、 メールボックスの完全な名前である name、 このメールボックスの階層の区切りを示す属性delimiterattributesを有しています。 attributes はビットマスクであり、次のものについて 調べることができます。

  • LATT_NOINFERIORS - このメールボックスは "子" を有しません (このボックスの中にメールボックスはありません。)

  • LATT_NOSELECT - 単なるコンテナであり、メールボックスではありません。 これをオープンすることはできません。

  • LATT_MARKED - このメールボックスには印が付けられています。 UW-IMAPD でのみ使用されます。

  • LATT_UNMARKED - このメールボックスはマークされていません。 UW-IMAPD でのみ必要です。

通常、ref は、{imap_server:imap_port} 形式の IMAP サーバーとする必要があります。 また、pattern により検索を開始するメールボックスの 階層を指定します。 全てのメールボックスを検索したい場合には、pattern に'*'を指定して下さい。

pattern の中で使用できる特別な文字として '*' および '%' があります。'*' は、全てのメールボックスを意味しま す。pattern に '*' を指定した場合、メール ボックス階層全体のリストが得られます。'%' は現在のレベルのみを意 味します。'%' を patternに指定した場合、トッ プレベルのメールボックスのみが返されます。UW_IMAPD を使用した場 合、'~/mail/%' は ~/mail ディレクトリの全てのメールボックスを返し ますが、そのディレクトリのサブフォルダーにあるメールボックスは返 しません。

例 1imap_getmailboxes() の例

$mbox = imap_open("{your.imap.host}","username","password",OP_HALFOPEN)
      || die("can't connect: ".imap_last_error());
 
$list = imap_getmailboxes($mbox,"{your.imap.host}","*");
if(is_array($list)) {
  reset($list);
  while (list($key, $val) = each($list))
  {
    print "($key) ";
    print imap_utf7_decode($val->name).",";
    print "'".$val->delimiter."',";
    print $val->attributes."<br>\n";
  }
} else
  print "imap_getmailboxes failed: ".imap_last_error()."\n";
 
imap_close($mbox);

imap_getsubscribed()も参照下さい。