【问题标题】:Zend Imap, fetching emails in Gmail LabelsZend Imap,在 Gmail 标签中获取电子邮件
【发布时间】:2012-10-09 22:59:16
【问题描述】:

我正在使用Zend framework 从 Gmail 中获取电子邮件,目前我只能在 INBOX 中获取邮件, 身份验证后我设置令牌和其他参数

 $imap->requestAndResponse('AUTHENTICATE', $authenticateParams);

 $response = $imap->requestAndResponse('XLIST', $imap->escapeString('', '*'));

在 $responce 变量中,我得到了所有标签/文件夹的列表

 Array
(
    [0] => Array
        (
            [0] => XLIST
            [1] => Array
                (
                    [0] => \HasNoChildren
                )

            [2] => /
            [3] => Calendar
        ).................... INBOX, Sent Mails Etc

等等,在做了一些代码并在索引 [3] 上获取名称之后,这些名称是我的标签和文件夹。

我在数组中有列表,如下所示。

    Array
(
    [0] => Calendar
    [1] => Drafts
    [2] => Facebook Mails
    [3] => Inbox
    [4] => Junk E-mail
    [5] => Logs
    [6] => Personal Mails
    [7] => Sent Items
    [8] => Office Mails
)

现在我想获取每封邮件/文件夹中的电子邮件

我试过 Zend_Mail_Storage_Folder_Maildir 但我不知道如何在上述每个文件夹中获取消息,我正在使用 Imap,

通过如下方式打开存储

$storage = new Zend_Mail_Storage_Imap($imap);

这只会返回收件箱文件夹中的邮件。

【问题讨论】:

  • 认为没有办法做到这一点。我已经通过从“所有邮件”文件夹中获取消息来解决它。

标签: php zend-framework gmail gmail-imap zend-gdata


【解决方案1】:

显示所有文件夹

    $storage = new Zend_Mail_Storage_Imap($this->imap);
    $folders = new RecursiveIteratorIterator($storage->getFolders(), RecursiveIteratorIterator::SELF_FIRST);
    echo '<select name="folder">';
    foreach ($folders as $localName => $folder) {
        $localName = str_pad('', $folders->getDepth(), '-', STR_PAD_LEFT) .
                $localName;
        echo '<option';
        if (!$folder->isSelectable()) {
            echo ' disabled="disabled"';
        }
        echo ' value="' . htmlspecialchars($folder) . '">'
        . htmlspecialchars($localName) . '</option>';
    }
    echo '</select>';

选择文件夹

$storage->selectFolder("[Gmail]/Sent Mail");

[Gmail]/已发送邮件标签用于选择已发送邮件文件夹

【讨论】:

    猜你喜欢
    • 2018-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-28
    • 2021-08-14
    • 2018-11-03
    • 2013-04-12
    相关资源
    最近更新 更多