首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用php发送批量电子邮件时出现问题

使用php发送批量电子邮件时出现问题
EN

Stack Overflow用户
提问于 2011-04-15 10:52:45
回答 2查看 93关注 0票数 0

下面是我的函数

代码语言:javascript
复制
function send_edm ($u_email_sender_name, $u_content, $u_mail, $u_subject, $edm_id) {
        foreach ($edm_email as $value) {

            $this->rege = Route :: loadClass('core_route_regclass');
            $this->sendmail = $this->rege->phpmailer();

            $this->sendmail->Mailer = "mail";
            $this->sendmail->IsHTML(true);

            $email_sender = $u_email_sender_name;
            $mail = $config->company_email; 

            $subject = $u_subject;
            $fromwhere = $email_sender; 
            $content = $u_content;      

            $this->sendmail->From = $fromwhere;
            $this->sendmail->FromName = $fromwhere;
            $this->sendmail->AddAddress($value["email"]);

            $this->sendmail->Subject = $u_subject;
            $this->sendmail->CharSet = "utf-8";
            $this->sendmail->Encoding = "base64";

            $this->sendmail->Body = $u_content;
            $this->sendmail->AltBody = "This is the body in plain text for non-HTML mail clients";  

            if(!$this->sendmail->Send())
            {
                echo "Message could not be sent. <p>";
            }

        }
}

如果我使用此功能发送超过1000封电子邮件,是否会出现任何可能导致发送过程中断的错误?如何提高使用php发送电子邮件的可靠性?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2011-04-15 11:07:51

对于大量邮件的发送,最好使用PEAR::Mail_Queue包。

这个包提供了处理邮件队列管理的类。它可以在后台加载、保存和发送保存的邮件,也可以备份一些邮件。

票数 0
EN

Stack Overflow用户

发布于 2011-04-15 11:16:44

THe对这个问题的回答取决于很多与你的代码无关的事情。例如,你的主机是否限制了你在给定时间段内可以发送的电子邮件数量?你是否提前验证了所有的输入?我们说的是多少mpre超过1000?1000次迭代循环比1m迭代循环稳定得多。服务器是否有足够的CPU周期带宽来完成完整的迭代?

您可能需要考虑使用工作队列来处理独立于网站本身的大型处理作业。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5671905

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档