0

我正在尝试通过 gmail smtp 发送邮件。该过程运行良好,但由于某种原因,在更改发送结构后,邮件需要 AGES 才能到达 gmail。我可以等待 20 分钟或更长时间让其中一封系统发送的邮件进入,但它仍然在收件箱中显示为(20 分钟前)。关于我做错了什么的任何线索?

$config = Zend_Registry::get('Zend_Config_Ini');
$tr = new Zend_Mail_Transport_Smtp('smtp.gmail.com', $config->mail->toArray());

然后,在 foreach 中发送邮件:

$mail = new Zend_Mail('UTF-8');
$mail->setType(Zend_Mime::MULTIPART_RELATED);
if (isset($pendingMail['senderMail']))
    $mail->setFrom($pendingMail['senderMail'], $pendingMail['senderfName'] . " " . $pendingMail['senderlName']);
$mail->addTo($pendingMail['receiverMail']);
$mail->setSubject($pendingMail['mailSubject']);
$mail->setBodyHtml(urldecode($pendingMail['mailContent']));

$mail->send();

$this->update(array('sent' => 1), 'idMail = \'' . $pendingMail['idMail'] . '\'');

这与 MULTIPART_RELATED 类型有关还是我在这里遗漏了什么?重申一下:邮件有效,但它们在到达 gmail 大约 20 分钟后出现在 gmail 收件箱中。哈普?

4

1 回答 1

1

它可能不是您的代码,而是您的 SMTP 服务器作为某个缓存系统。你的代码对我来说似乎没问题。

于 2009-09-07T14:56:50.853 回答