列出郵箱中的所有資料夾
一旦你連線到你的郵箱,你會想看看裡面。第一個有用的命令是 imap_list 。第一個引數是從 imap_open
獲取的資源,第二個引數是你的郵箱字串,第三個引數是模糊搜尋字串(*
用於匹配任何模式)。
$folders = imap_list($mailbox, "{imap.example.com:993/imap/tls/secure}", "*");
if ($folders === false) {
echo "Failed to list folders in mailbox";
} else {
print_r($folders);
}
輸出應該與此類似
Array
(
[0] => {imap.example.com:993/imap/tls/secure}INBOX
[1] => {imap.example.com:993/imap/tls/secure}INBOX.Sent
[2] => {imap.example.com:993/imap/tls/secure}INBOX.Drafts
[3] => {imap.example.com:993/imap/tls/secure}INBOX.Junk
[4] => {imap.example.com:993/imap/tls/secure}INBOX.Trash
)
你可以使用第三個引數來過濾這些結果,如下所示:
$folders = imap_list($mailbox, "{imap.example.com:993/imap/tls/secure}", "*.Sent");
現在結果只包含名稱中帶有 .Sent
的條目:
Array
(
[0] => {imap.example.com:993/imap/tls/secure}INBOX.Sent
)
注意 :使用*
作為模糊搜尋將遞迴返回所有匹配。如果你使用%
,它將僅返回指定的當前資料夾中的匹配項。