imap_list

(PHP 4, PHP 5, PHP 7, PHP 8)

imap_listメールボックスのリストを読み込む

説明

imap_list(IMAP\Connection $imap, string $reference, string $pattern): array|false

メールボックスのリストを読み込みます。

パラメータ

imap

IMAP\Connection クラスのインスタンス。

reference

通常、referenceimap_open() で述べられているサーバー定義です。

警告

信頼できないデータをこのパラメータに渡すのであれば、 imap.enable_insecure_rsh を無効にしておかなければ危険です。

pattern

検索を開始するメールボックスの階層を指定します。

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

戻り値

メールボックスの名前を含む配列を返します。 または失敗時に false を返します。

変更履歴

バージョン 説明
8.1.0 引数 imap は、IMAP\Connection クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、有効な imap リソース が期待されていました。

例1 imap_list() の例

<?php
$mbox
= imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
or die(
"接続できません: " . imap_last_error());

$list = imap_list($mbox, "{imap.example.org}", "*");
if (
is_array($list)) {
foreach (
$list as $val) {
echo
imap_utf7_decode($val) . "\n";
}
} else {
echo
"imap_list が失敗しました: " . imap_last_error() . "\n";
}

imap_close($mbox);
?>

参考

  • imap_getmailboxes() - メールボックスのリストを読み込み、各ボックスに関する詳細な情報を返す
  • imap_lsub() - 購読しているすべてのメールボックスの一覧を得る