如何使用IMAP和php下载邮件附件

时间:2014-02-19 11:44:18

标签: php imap email-attachments

我正在使用此代码从gmail下载附件

    $savedir = __DIR__ . '/imap-dump/';

    $inbox = new IMAPMailbox($hostname, $username, $password);
    $emails = $inbox->search('ALL');
    if ($emails) {
    rsort($emails);
    foreach ($emails as $email) {
        foreach ($email->getAttachments() as $attachment) {
            $savepath = $savedir . $attachment->getFilename();
            file_put_contents($savepath, $attachment);
        }
       }
   }

但是当我们执行它时会显示此错误无法连接到Gmail:

Can't connect to gmail-imap.l.google.com,993: Connection refused

我该如何解决这个问题?`

3 个答案:

答案 0 :(得分:0)

验证IMAPMailbox类中的连接。您发布的代码是过程代码,不处理连接。请编辑您的OP并添加IMAPMailbox类。

答案 1 :(得分:0)

因此,您安装的SSL库993是一个安全端口。

检查IMAP配置是否为安全连接。

答案 2 :(得分:0)

首先检查你的课程。与谷歌的imap服务器的连接应该像“imap.gmail.com:993/imap/ssl”。 此外,您必须在Google帐户设置中禁用对低安全应用的保护。这是唯一的方法。之后,保存,退出所有谷歌连接。 然后,https://www.google.com/accounts/DisplayUnlockCaptcha 再次,登录到您的谷歌帐户。 现在它应该将你的应用程序登录到gmail