函数名:imap_getmailboxes()
适用版本:PHP 4, PHP 5, PHP 7
用法:imap_getmailboxes(resource $imap_stream, string $ref, string $pattern)
说明:该函数用于获取指定邮箱中的目录列表。
参数:
- $imap_stream:必需,通过imap_open()函数返回的 IMAP 流。
- $ref:必需,邮箱的引用路径,通常为根目录。可以是空字符串(""),表示根目录,也可以是其他目录路径。
- $pattern:必需,匹配邮箱名称的模式。可以使用通配符"*"和"%"。
返回值:返回一个包含邮箱目录信息的数组,如果失败则返回 FALSE。
示例:
// 连接到 IMAP 服务器
$imap_stream = imap_open("{imap.example.com:993/imap/ssl}", "username", "password");
if ($imap_stream) {
// 获取邮箱目录列表
$mailboxes = imap_getmailboxes($imap_stream, "{imap.example.com}", "*");
if ($mailboxes) {
foreach ($mailboxes as $mailbox) {
echo "Mailbox name: " . $mailbox->name . "<br>";
echo "Mailbox delimiter: " . $mailbox->delimiter . "<br>";
echo "Mailbox attributes: " . $mailbox->attributes . "<br>";
echo "Mailbox flags: " . $mailbox->flags . "<br><br>";
}
} else {
echo "Failed to get mailboxes.";
}
// 关闭 IMAP 连接
imap_close($imap_stream);
} else {
echo "Failed to connect to IMAP server.";
}
注意事项:
- 在使用该函数之前,需要先使用 imap_open() 函数连接到 IMAP 服务器。
- $ref 参数表示邮箱的引用路径,通常为根目录。可以是空字符串(""),表示根目录,也可以是其他目录路径。
- $pattern 参数用于匹配邮箱名称的模式,可以使用通配符"*"和"%"。
- 返回的数组中,每个元素都是一个对象,包含了邮箱的名称、分隔符、属性和标志等信息。
- 如果函数执行失败,将返回 FALSE。