Php 每千次更换一次电子邮件服务器?

Php 每千次更换一次电子邮件服务器?,php,for-loop,Php,For Loop,我正在尝试切换phpmailer信息,以改变每发送1000封电子邮件服务器的负载。例如,每发送1000封电子邮件,我想使用不同的服务器 1-1000封电子邮件使用服务器1 1001-2000使用服务器2 2001-3000使用服务器1等 到目前为止,我使用的是: $x =1; foreach($data as $value) { if ($x <= 1000) { //use server 1 $x++; } else { //use server 2 if ($x

我正在尝试切换
phpmailer
信息,以改变每发送1000封电子邮件服务器的负载。例如,每发送1000封电子邮件,我想使用不同的服务器

  • 1-1000封电子邮件使用服务器1
  • 1001-2000使用服务器2
  • 2001-3000使用服务器1等
到目前为止,我使用的是:

$x =1;
foreach($data as $value) {

if ($x <= 1000) {
  //use server 1
  $x++;
} else {
  //use server 2
  if ($x == 2000) {
    $x = 1;
  }
}
$x=1;
foreach(数据为$value){

if($x可能比if/else优雅一点:
$phpMailerInstances = ['server1' => $yourInstance, 'server2' => $yourInstance2]

function getServer($currentServer){
    if($currentServer == 'server1')
    {
        return 'server2';
    }
    return 'server1';
}

$currentServer = 'server1';
for($i = 0; $i < 10000; $i++)
{
    echo $i.PHP_EOL;
    if($i % 1000 == 0)
    {
        $currentServer = getServer($currentServer);
        echo '>>>>>'.$currentServer.PHP_EOL;
    }

    $phpMailerInstances[$currentServer]->send()
}

?>
$phpmailinstances=['server1'=>$yourInstance,'server2'=>$yourInstance2]
函数getServer($currentServer){
如果($currentServer=='server1')
{
返回'server2';
}
返回“server1”;
}
$currentServer='server1';
对于($i=0;$i<10000;$i++)
{
echo$i.PHP\u EOL;
如果($i%1000==0)
{
$currentServer=getServer($currentServer);
echo'>>>>'.$currentServer.PHP\u EOL;
}
$phpmailinstances[$currentServer]->send()
}
?>

设置另一个smtp怎么样?我将一个新的phpmailer与elseSo实例关联。你主要要求一个更好的循环解决方案?发送垃圾邮件不太好!为什么不使用邮件服务,比如mailchimp或其他东西呢?否则,如果代码起作用,你只想知道是否有更好的方法,你应该将其发布。这对于问题,而不是评论。@mr.void正确。