首页 > 解决方案 > 如何使用 searchmailbox() 通过在此方法的条件中传递日期来搜索电子邮件?

问题描述

这是我的函数,在这行代码中 * $mailIds = $mailbox->searchMailBox(); * 我遇到了问题.. 我想搜索最新的电子邮件,但如果我用这种方法写任何东西,我就会遇到语法问题或空白页。请问有人可以帮我解决这个问题吗?

public function actionCreate1()
    {
        $imapConnection = new ImapConnection();

        $imapConnection->imapPath = '{imap.gmail.com:993/imap/ssl}INBOX';
        $imapConnection->imapLogin = 'example@gmail.com';
        $imapConnection->imapPassword = 'password';
        $imapConnection->serverEncoding = 'encoding'; // utf-8 default.
        $imapConnection->attachmentsDir = '/';
        $imapConnection->decodeMimeStr = true;
        

        $mailbox = new Mailbox($imapConnection);
        $mailbox->readMailParts = false;
        $mailIds = $mailbox->searchMailBox();

        foreach($mailIds as $mailId)
        {
            // Returns Mail contents
            $mail = $mailbox->getMail($mailId);

            // Read mail parts (plain body, html body and attachments
            $mailObject = $mailbox->getMailParts($mail);

            // Array with IncomingMail objects
            echo '<pre>';
            print_r($mailObject);

            // Returns mail attachements if any or else empty array
            $attachments = $mailObject->getAttachments();
            foreach($attachments as $attachment){
                echo ' Attachment:' . $attachment->name . PHP_EOL;

                // Delete attachment file
                unlink($attachment->filePath);
            }
        }}

标签: yii2imap

解决方案


推荐阅读