函式名: imap_search()
適用版本: PHP 4, PHP 5, PHP 7
用法:該函式用於在IMAP郵箱中搜尋郵件。
語法:array imap_search ( resource $imap_stream , string $criteria [, int $options = SE_FREE [, string $charset = NIL ]] )
引數:
- $imap_stream: 必需,一個有效的 IMAP 流。
- $criteria: 必需,搜尋的條件。可以是字串或陣列。
- $options: 可選,搜尋選項。預設為 SE_FREE,表示釋放搜尋結果。
- $charset: 可選,搜尋的字符集。預設為 NIL,表示使用當前字符集。
返回值:返回一個包含匹配郵件序號的陣列,如果沒有匹配的郵件,則返回 false。
示例:
// 連線到 IMAP 伺服器
$imap_server = "{imap.example.com:993/imap/ssl}INBOX";
$username = "your_username";
$password = "your_password";
$imap_stream = imap_open($imap_server, $username, $password);
if ($imap_stream) {
// 搜尋包含關鍵字 "php" 的郵件
$search_results = imap_search($imap_stream, 'TEXT "php"');
if ($search_results) {
echo "匹配的郵件序號:";
foreach ($search_results as $msg_number) {
echo $msg_number . ", ";
}
} else {
echo "沒有匹配的郵件。";
}
// 關閉 IMAP 連線
imap_close($imap_stream);
} else {
echo "無法連線到 IMAP 伺服器。";
}
上述示例首先使用 imap_open() 函式連線到 IMAP 伺服器,並驗證使用者名稱和密碼。然後,使用 imap_search() 函式搜尋包含關鍵字 "php" 的郵件,並將匹配的郵件序號列印出來。最後,使用 imap_close() 函式關閉與 IMAP 伺服器的連線。