# imap_list

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

imap_list — Read the list of mailboxes

### 说明

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

Read the list of mailboxes.

### 参数

`imap`

  IMAP\Connection 实例。

`reference`

  `reference` should normally be just the server specification as described in imap_open().

  警告

  Passing untrusted data to this parameter is insecure, unless imap.enable_insecure_rsh is disabled.

`pattern`

  指定在邮箱层级的何处开始查找。

  在组成 `pattern` 的字符中可使用两个特殊字符： '`*`' 和 '`%`'。 '`*`' 是指返回所有邮箱目录. 如果将 '`*`' 作为 `pattern` 参数时, 则会返回整个邮箱层级结构。 '`%`' 是指只返回当前级次。 '`%`' 作为 `pattern` 参数则只会返回顶层邮箱； '`~/mail/%`' 用于 `UW_IMAPD` 则会返回名为 ~/mail 的目录, 但不包含其子目录。

### 返回值

Returns an array containing the names of the mailboxes or `false` in case of failure.

### 更新日志

版本 | 说明
--- | ---
8.1.0 | 现在 `imap` 参数接受 IMAP\Connection 实例，之前接受有效的 `imap` resource。

### 示例

示例 #1 imap_list() example

`<?php
$mbox = imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
or die("can't connect: " . 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 failed: " . imap_last_error() . "\n";
}
imap_close($mbox);
?>`

### 参见

- imap_getmailboxes() - Read the list of mailboxes, returning detailed information on each one
- imap_lsub() - List all the subscribed mailboxes

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open