通过PHP yii发送邮件,直到成功准时

时间:2017-03-29 09:59:54

标签: php yii wait

我有特殊时间7天发送邮件的php功能但是当我发送邮件时有时因为服务器忙或不可用而没有发送邮件,我的问题是当每10分钟出现错误时如何尝试多次发送邮件直到发送成功

    private function sendEMailMessage($args) {
    $failed = true;
    for($i = 0; $i < 5 && $failed; $i ++) {
        $failed = Utilities::sendEMailMessage ( $args ) != '';
        if ($failed) {
            sleep ( 15 );
        }
    }
}

//它的工作与否?

2 个答案:

答案 0 :(得分:0)

另一种方法是在数据库表中设置一个标志。根据标记值,您可以发送/重新发送电子邮件。成功发送电子邮件后,您可以删除或重置标记。

答案 1 :(得分:0)

解决这个问题的最佳方法是每7天设置一次cron作业。对于有时候没有发送目的的邮件,你可以使用它,

<input type="radio" name="k1[]" id="k11" value="1" />

如果你的yii应用程序中包含这个,那么一旦发送邮件,它应该清除ssl套接字层并再次打开一个新的套接字。通过结合使用这些我觉得它应该有用。