gpt4 book ai didi

php - 如何使用 Zend_Mail_Protocol_Imap 或 Zend_Mail_Storage_Imap 批量检索电子邮件

转载 作者:可可西里 更新时间:2023-11-01 12:59:10 25 4
gpt4 key购买 nike

我正在使用 Zend_Mail_Storage_Imap 访问电子邮件,但使用以下代码

$storage = new Zend_Mail_Storage_Imap($imap);
$allIds = $storage->getUniqueId(); // i get all key value pair of meesageid and uniqueid
foreach ($allIds as $k => $v)
{
echo '<li>' . htmlentities($storage->getMessage($v)->subject) . "</li>\n";
}

我的问题是它循环并一次收到一封电子邮件,速度很慢,就像每秒收到两封电子邮件一样非常慢。我正在寻找这些邮件的批量检索方法,但找不到任何。有人做过吗

最佳答案

终于明白了。

其中 $imap 是 Zend_Mail_Protocol_Imap 的实例化和连接版本:

  1. $imap->select();//或 $imap->select('FOLDER_NAME');

  2. $imap->requestAndResponse('SEARCH UNSEEN', $imap->escapeString('*'))//所有未读邮件 ID

  3. $imap->requestAndResponse('SEARCH UNSEEN FROM "someEmail@gmail.com"', $imap->escapeString('*'))//来自 someEmail@gmail 的所有未读电子邮件 ID。 com

  4. $imap->requestAndResponse('SEARCH UNSEEN SUBJECT "test"FROM "someEmail@gmail.com"', $imap->escapeString('*'))//所有未读邮件 ID 来自someEmail@gmail.com 主题为test

*您必须先执行上面的#1,否则您会得到类似于:“TAG# BAD SEARCH not allowed now.”

上面所有的都将返回一个类似于下面数组的数组:

//C: TAG3 SEARCH UNSEEN
//S: * SEARCH 321 323 362 371 377 384 386 387 388 389 416 417 418
//S: TAG3 OK SEARCH completed (Success)
//The above lines are in the format of RFC 1730 to show what was actually sent/received.

array (size=1)
0 =>
array (size=14)
0 => string 'SEARCH' (length=6)
1 => string '321' (length=3)
2 => string '323' (length=3)
3 => string '362' (length=3)
4 => string '371' (length=3)
5 => string '377' (length=3)
6 => string '384' (length=3)
7 => string '386' (length=3)
8 => string '387' (length=3)
9 => string '388' (length=3)
10 => string '389' (length=3)
11 => string '416' (length=3)
12 => string '417' (length=3)
13 => string '418' (length=3)

关于php - 如何使用 Zend_Mail_Protocol_Imap 或 Zend_Mail_Storage_Imap 批量检索电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14575421/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com