每隔一段时间发送PHP邮件

iHe*_*eff 3 php email

我正在为我的高中学生会工作一个简单的短信服务,我的托管服务每分钟只允许发送19封PHP邮件,所以有没有办法设置一个间隔只发送15封电子邮件,等一下分钟,发送另外15,等待,直到所有邮件发送?下面是我的一些代码,你可能需要看到的只是"foreach"部分.

$subject =     ""; 
$message =     "Hey, $first! $messageget";

$header =     'From: Student Council<email@email.net>' . "\r\n" .
               'Reply-To: email@email.net' . "\r\n" . 
              'X-Mailer: PHP/' . phpversion(); 


foreach($to as $value) { 

    $result = mail($value, $subject, $message, $header); 



} 
Run Code Online (Sandbox Code Playgroud)

Sve*_*ven 6

在60秒内发送15个邮件相当于每4秒发送一封邮件.

因此,如果您有一个可以一个接一个地发送所有邮件的循环,那么您可以通过在sleep(4)发送每封邮件后执行减速来减速.

foreach($to as $value) { 
    $result = mail($value, $subject, $message, $header); 
    sleep(4);
} 
Run Code Online (Sandbox Code Playgroud)

这比计算何时发送下一批15封邮件然后再等待60秒更容易.:)

此外,它还可以平衡CPU和网络资源的使用,并且在60秒后不会达到峰值.